Pikku pelit
Pikku pelit
eli tänne kaikki pikku pelit esim. semmoiset pelit joissa on yksi maa tai yksi tehtävä niin edelleen....
ja minulta tulee nyt tänne ensimmäinen pien peli nimi on
Zombie killer 2
tehtävä on pelastaa kaverisi ja tappaa zombeja.
härveleitä:
-snipu, (snipu on lehmä) (kun olet saannut sen painat 2)
-haulikko,(haulikko on ukkeli jolla on kaksi asetta)( kun olet saanut sen paina 3)
-luotiliivit,(jonkin näköinen paketti)( zombit hittaa vähemmän)(tulee automaattisesti käyttöön)
pelissä lentää mukavasti verta
Ps: en suosittele kuolemaan XD
ai niin peli on myös kaksin peli.
ja pelin saa täältä http://files.filefront.com/zombie+kille ... einfo.html
ja minulta tulee nyt tänne ensimmäinen pien peli nimi on
Zombie killer 2
tehtävä on pelastaa kaverisi ja tappaa zombeja.
härveleitä:
-snipu, (snipu on lehmä) (kun olet saannut sen painat 2)
-haulikko,(haulikko on ukkeli jolla on kaksi asetta)( kun olet saanut sen paina 3)
-luotiliivit,(jonkin näköinen paketti)( zombit hittaa vähemmän)(tulee automaattisesti käyttöön)
pelissä lentää mukavasti verta
Ps: en suosittele kuolemaan XD
ai niin peli on myös kaksin peli.
ja pelin saa täältä http://files.filefront.com/zombie+kille ... einfo.html
Last edited by naabster on Fri Aug 08, 2008 9:44 pm, edited 1 time in total.
-
- Forum Veteran
- Posts: 2396
- Joined: Tue Aug 28, 2007 4:20 pm
Re: Pikku pelit
Olihan tuo varsin mukava pikkupeli. Tilesetin ottaminen media-kansiosta kuitenkin hieman riipaisee. Tuskin olisi ollut suuri vaiva tehdä hieman rosoista tiiliseinää ja kivilattiaa tai ottaa netistä jotain käytettävää. Grafiikat oli kuitenkin itse tekemiäsi ja piristivät peliä. Oli mukava huomata, että kaikki zombiet eivät olleet saman näköisiä. Veriefekti oli hieno, mutta veren lentäessä joka suuntaan on hieman epärealistista. Pelistä jäi kaikenkaikkiaan hyvä vaikutelma - ja ottaen huomioon CB pelien tason - tämä olisi ansainnut mennä "normaali-kokoisten" pelien sarjaan ;)
Itselläni ei ole laitettavaksi isoja eikä pieniä pelejä.
Itselläni ei ole laitettavaksi isoja eikä pieniä pelejä.
-
- Active Member
- Posts: 211
- Joined: Tue Aug 28, 2007 3:48 pm
Re: Pikku pelit
Some stories can't be told by words...
Some legends are meant to die...
Some bloodlines must come to an end...
Metal Gear Solid 4: Guns of the Patriots
Sneaking Out 12.06.2008
Some legends are meant to die...
Some bloodlines must come to an end...
Metal Gear Solid 4: Guns of the Patriots
Sneaking Out 12.06.2008
-
- Forum Veteran
- Posts: 2396
- Joined: Tue Aug 28, 2007 4:20 pm
Re: Pikku pelit
Mun mielestä tämä aihe kannattaisi silti pitää pystyssä, sillä Mysterious Coder ei käy enää näillä foorumeilla, ja aiheen ensimmäinen viesti sisältää kuolleita linkkejä ja vanhentunutta tietoa. Tietenkin nuo vielä voimassa olevien pienten pelien linkit voisi siirtää tähän aiheeseen. Eikä ollut mitään piilomodetusta, sanoin vain mielipiteeni.
Re: Pikku pelit
Joo, samaa mieltä. Ja tuossa toimivat linkit:
------------
Airsoft - tehnyt arska. Kaksinpeli, kaksi asetta pistooli ja konekivääri.
Nimetön - pientä räiskintää, tehnyt itkevä nakki.
Little green ball - Alkun tasohyppely.
copy-paste-pelit:
Joon korispeli:
Wöm - cb peogrammerin matopeli:
Atzakan silmien rasitus peli, väistele palkkeja hiirellä.
Oudon koodarin Fusion Game. Käytä hiirtä ja hiiren näppäimiä vapauttamaan energiaa.
------------
Airsoft - tehnyt arska. Kaksinpeli, kaksi asetta pistooli ja konekivääri.
Nimetön - pientä räiskintää, tehnyt itkevä nakki.
Little green ball - Alkun tasohyppely.
copy-paste-pelit:
Joon korispeli:
Code: Select all
SAFEEXIT OFF
SCREEN 800,600,0,0
FrameLimit 60
Dim speedx As Float
Dim speedy As Float
Dim hx,hy As Float
korisnd=LoadSound("media\whip.wav")
tausta=MakeImage(800,600)
DrawToImage tausta
For y=1 To 600
Color y/3,y/4,50
Line 0,y,800,y
Next y
DrawToScreen
f=OpenToEdit("korisenkka.txt")
enkka=ReadInt(f)
CloseFile f
DrawImage tausta,0,0
Text 0,0,"Pelissä tarkoituksesi on heittää niin monta koria kuin ehdit minuutin aikana."
Text 0,20,"Anna pallolle vauhtia pitämällä pohjassa hiiren vasenta nappia heittoalueella,"
Text 0,40,"ja vapauta painike saadaksesi pallon liikkeelle."
DrawScreen
WaitKey
alku:
If start=1 Then
Text 0,0,"Heitit "+kori+" koria."
Text 0,20,"Ennätys on "+enkka+"."
Text 0,40,"Paina jotain näppäintä jatkaaksesi."
DrawScreen
WaitKey
EndIf
start=1
kori=0
ballX# = ScreenWidth() / 2
ballY# = ScreenHeight() / 2
velX# = 0
velY# = 0
PositionMouse ballX, ballY
x=400:y=300
painovoima#=.5
aika#=Timer()+60000
Repeat
vely=vely+painovoima
If bally>550 And vely>0 Then vely=-vely*.8
If ballx>780 And velx>0 Then velx=-velx*.8
If ballx<20 And velx<0 Then velx=-velx*.8
ballX = ballX + velX
ballY = ballY + velY
md=MouseDown(1)
If MouseX()>200 And md Then PositionMouse 200,MouseY()
If MouseY()<350 And md Then PositionMouse MouseX(),350
If MouseY()>550 And md Then PositionMouse MouseX(),550
If KeyHit(19) Then Goto alku
If Distance(705,205,ballx,bally)<20 Then
ang#=GetAngle(705,205,ballx,bally)
spe#=Sqrt(velx^2+vely^2)
If velx<>0 Then
spang#=Tan(vely/velx)
Else
If vely>0 Then spang=90 Else spang=270
EndIf
ero#=ang-spang
uus#=spang+2*ero
velx=Cos(uus)*spe*.8
vely=Sin(uus)*spe*.8
EndIf
If locked Then
hx=Max(-10,Min(MouseMoveX(),10))
hy=Max(-10,Min(MouseMoveY(),10))
speedx=speedx+hx/1.4
speedy=speedy+hy
ballx=MouseX()
bally=MouseY()
velx=0
vely=0
EndIf
speedx=.7*speedx
speedy=.7*speedy
If md Then locked=1
If MouseUp(1) Then
locked=0
korituli=0
velx=speedx
vely=speedy
lahella=0
EndIf
If ballx>715 And Abs(bally-205)<10 And vely>0 Then lahella=1
If korituli=1 Then lahella=0
If ballx>715 And Abs(bally-220)<10 And vely>0 And lahella Then kori=kori+1:PlaySound korisnd:korituli=1
jaljella#=(aika-Timer())/1000.0
If kori>enkka Then enkka=kori
If jaljella<0 Then Goto alku
// Lopuksi piirto
DrawImage tausta,0,0
Color 255,255,255
Text 0,0,"FPS: "+FPS()
Text 200,0,"KORIT: "+kori
Text 400,0,"ENKKA: "+enkka
Text 600,0,"AIKA: "+jaljella+"s"
Text 400,580,"Paina r aloittaaksesi uudelleen alusta."
Box MouseX()-1,MouseY()-1,3,3
Box 0,350,200,200,OFF
Text 20,530,"Heitä täältä"
Color 225,125,50
Circle ballX - 20, ballY - 20, 40, ON
Color 0,0,0
a=a-velx
a2=a+60
a3=a+120
Circle ballX - 20, ballY - 20, 40, OFF
Line ballx-Sin(a)*20,bally-Cos(a)*20,ballx+Sin(a)*20,bally+Cos(a)*20
Line ballx-Sin(a2)*20,bally-Cos(a2)*20,ballx+Sin(a2)*20,bally+Cos(a2)*20
Line ballx-Sin(a3)*20,bally-Cos(a3)*20,ballx+Sin(a3)*20,bally+Cos(a3)*20
Color 255,255,255
Box 700,200,10,10
Line 705,205,800,205
DrawScreen
Until EscapeKey()
f=OpenToEdit("korisenkka.txt")
WriteInt f,enkka
CloseFile f
Code: Select all
SetWindow "Wöm"
Dim worm_x(100) As integer
Dim worm_y(100) As integer
worm_start_x=14
worm_start_y=14
window_w=29
window_h=29
//ALKU
font=LoadFont("small fonts",20,1)
SetFont font
Dim start_image(14) As String
start_image(0)=" 0 0 "
start_image(1)=" "
start_image(2)="0 0 0000 0 0"
start_image(3)=" 0 0 0 0 0 00 00"
start_image(4)=" 0 0 0 0 0 0 0"
start_image(5)=" 0 0 0000 0 0"
start_image(6)=" 0000 "
start_image(7)=" 000000 "
start_image(8)=" 000000 "
start_image(9)=" 0 000000 "
start_image(10)=" 000 000 "
start_image(11)=" 000000000 "
start_image(12)=" 00000000 "
start_image(13)=" 0000000 "
start_image(14)=" 000000 "
Dim start_image_c(14) As String
start_image_c (0)="11111111111111111111"
start_image_c (1)="11111111111111111111"
start_image_c (2)="11111111111111111111"
start_image_c (3)="11111111111111111111"
start_image_c (4)="11111111111111111111"
start_image_c (5)="11111111111111111111"
start_image_c (6)=" HH55 "
start_image_c (7)=" HH5555 "
start_image_c (8)=" H55B5B "
start_image_c (9)=" H H55555 "
start_image_c (10)=" HHH 555 "
start_image_c (11)=" HHHHH5555 "
start_image_c (12)=" HHH55555 "
start_image_c (13)=" HH55555 "
start_image_c (14)=" H55555 "
alku:
worm_length=7 //MAX 100
worm_speed=7 //MAX 20
game_start=1
game_score=0
newfood=1
//PIIRRETÄÄN
//BG
Color 10,10,10
Box 0,0,ScreenWidth(),ScreenHeight()
For k=0 To 14
For i=1 To 20
c$=Mid(start_image_c(k),i,1)
Color 0,0,0
If c="0" Then Color 0,0,0
If c="1" Then Color 255,0,0
If c="2" Then Color 0,255,0
If c="3" Then Color 0,0,255
If c="4" Then Color 128,0,0
If c="5" Then Color 0,128,0
If c="6" Then Color 0,0,128
If c="7" Then Color 0,255,255
If c="8" Then Color 255,255,0
If c="9" Then Color 255,0,255
If c="A" Then Color 128,128,128
If c="B" Then Color 208,176,0
If c="C" Then Color 255,255,255
If c="D" Then Color 132,11,177
If c="E" Then Color 123,90,0
If c="F" Then Color 192,192,192
If c="G" Then Color 64,0,0
If c="H" Then Color 0,64,0
If c="I" Then Color 0,0,64
ch$=Mid(start_image(k),i,1)
If ch<>" " Then Box (i-1)*20,k*20,20,20
Next i
Next k
//TEKSTI
Color cbwhite
Text 0,281,"Press any arrow key "+lower("To")+" start"
DrawScreen
a=WaitKey()
If a=203 Or a=208 Or a=205 Or a=200 Then Goto peli Else Goto alku
peli:
Repeat
//VAHNAT ARVOT ja ALOITUS
If game_start=0 Then
worm_o_dir_x=worm_dir_x
worm_o_dir_y=worm_dir_y
Else
worm_o_dir_x=99
worm_o_dir_y=99
For i=0 To worm_length
worm_x(i)=worm_start_x
worm_y(i)=worm_start_y
Next i
game_start=0
EndIf
//PÄIVITETÄÄN
//MATO
If Timer()>worm_speed_t Then
//OHJAUS
y_a=0
x_a=0
If LeftKey() Then worm_dir_x=-1:worm_dir_y=0:x_a=x_a+1
If DownKey() Then worm_dir_y=1:worm_dir_x=0:y_a=y_a+1
If RightKey() Then worm_dir_x=1:worm_dir_y=0:x_a=x_a+1
If UpKey() Then worm_dir_y=-1:worm_dir_x=0:y_a=y_a+1
If y_a>1 Then
If Rand(0,1) Then worm_dir_y=1 Else worm_dir_y=-1
EndIf
If x_a>1 Then
If Rand(0,1) Then worm_dir_x=1 Else worm_dir_x=-1
EndIf
//EI VOI KÄÄNTYÄ ITSEENSÄ
If worm_dir_x<>worm_o_dir_x Then
If worm_dir_y=worm_o_dir_y Then worm_dir_x=worm_o_dir_x
EndIf
If worm_dir_y<>worm_o_dir_y Then
If worm_dir_x=worm_o_dir_x Then worm_dir_y=worm_o_dir_y
EndIf
//LIIKE
For i=worm_length To 0 Step -1
If i>0 Then
worm_x(i)=worm_x(i-1):worm_y(i)=worm_y(i-1)
Else
worm_x(0)=worm_x(0)+worm_dir_x
worm_y(0)=worm_y(0)+worm_dir_y
worm_speed_t=Timer()+(200-(worm_speed*10))
EndIf
Next i
EndIf
//MADON SEINÄT
If worm_x(0)<0 Then worm_x(0)=window_w
If worm_x(0)>window_w Then worm_x(0)=0
If worm_y(0)<0 Then worm_y(0)=window_h
If worm_y(0)>window_h Then worm_y(0)=0
//MADON KUOLEMA
For i=1 To worm_length
If worm_x(0)=worm_x(i) And worm_y(0)=worm_y(i) Then Goto alku
Next i
//RUOKA
If worm_x(0)=food_x And worm_y(0)=food_y Or newfood=1 Then
hit=1
While hit=1
food_x=Rand(0,window_w)
food_y=Rand(0,window_h)
hit=0
For i=0 To worm_length
If worm_x(i)=food_x And worm_y(i)=food_y Then hit=1
Next i
Wend
If newfood=0 Then
game_score=game_score+1
//PITUUS
worm_length_c=worm_length_c+1
If worm_length_c>0 Then
worm_length=worm_length+1
worm_x(worm_length)=worm_x(worm_length-1)
worm_y(worm_length)=worm_y(worm_length-1)
worm_length_c=0
EndIf
//VAUHTI
worm_speed_c=worm_speed_c+1
If worm_speed_c>5 Then
worm_speed=worm_speed+1
worm_speed_c=0
EndIf
EndIf
newfood=0
EndIf
//VOITTO(taulukko loppuu kesken etc.)
If worm_length>100 Then Goto alku
//PIIRRETÄÄN
//HUD
Color 10,100,10
Box 300,0,100,400
Color cbblack
Text 305,0,"Score: "+game_score
If KeyDown(23)
Text 305,15,"Speed:"+worm_speed
Text 305,30,"Length:"+worm_length
EndIf
//MATO
For i=0 To worm_length
Color 50+(205/worm_length)*(worm_length-i),0,0
Box worm_x(i)*10,worm_y(i)*10,10,10
Next i
//RUOKA
Color 10,100,10
Box food_x*10,food_y*10,10,10
DrawScreen
Until EscapeKey()
Code: Select all
SCREEN 400, 300
SAFEEXIT OFF
Const MEM_PER_WALL = 8
Main()
Function Main()
ClsColor 255, 255, 255
ShowMouse OFF
Dim bWalls As Byte
Dim fSpeed As Float
Dim iRound As integer
Dim iPoints As integer
bWalls = 3
fSpeed = 5.0
iRound = 1
memWalls = MakeMEMBlock( bWalls * MEM_PER_WALL )
x = 500
For i = 0 To bWalls - 1
h = Rand( 50, 150 )
PokeFloat memWalls, i * MEM_PER_WALL, x
PokeShort memWalls, 4 + i * MEM_PER_WALL, Rand( 50, 250 - h )
PokeByte memWalls, 6 + i * MEM_PER_WALL, Rand( 20, 30 )
PokeByte memWalls, 7 + i * MEM_PER_WALL, h
x + 200
Next i
Repeat
Cls
DrawBorders()
LimitMouse()
If ControlWalls( memWalls, bWalls, fSpeed ) = 1 Then
Cls
DrawScreen
Print "You got " + iPoints + " points!"
Wait 2000
Exit
EndIf
iPoints + 1
Color 0, 0, 0
Text 5, 5, "Points:" + iPoints
DrawScreen
iRound + 1
If iRound > 50 Then
fSpeed + 0.1
iRound = 0
EndIf
Until KeyHit( CbKeyEsc )
DeleteMEMBlock memWalls
End Function
Function DrawBorders()
Color 0, 200, 0
Box 0, 0, 640, 50
Box 0, 250, 640, 50
End Function
Function LimitMouse()
If MouseY() > 240 Then PositionMouse MouseX(), 240
If MouseY() < 60 Then PositionMouse MouseX(), 60
Color 150, 0, 0
Box MouseX() - 5, MouseY() - 5, 10, 10
End Function
Function ControlWalls( _memBlock, _wallsTot, _speed# )
For i = 0 To _wallsTot - 1
x = PeekFloat( _memBlock, i * MEM_PER_WALL )
y = PeekShort( _memBlock, 4 + i * MEM_PER_WALL )
w = PeekByte( _memBlock, 6 + i * MEM_PER_WALL )
h = PeekByte( _memBlock, 7 + i * MEM_PER_WALL )
Color 123, 90, 0
Box x, y, w, h
If CheckCollisions() = 1 Then Return 1
If x < -90 Then
h = Rand( 50, 150 )
PokeFloat _memBlock, i * MEM_PER_WALL, 500
PokeShort _memBlock, 4 + i * MEM_PER_WALL, Rand( 50, 250 - h )
PokeByte _memBlock, 6 + i * MEM_PER_WALL, Rand( 20, 30 )
PokeByte _memBlock, 7 + i * MEM_PER_WALL, h
Else
PokeFloat _memBlock, i * MEM_PER_WALL, x - _speed
EndIf
Next i
End Function
Function CheckCollisions()
PickColor MouseX() + 5, MouseY() + 5
If getRGB( GREEN ) > 85 And getRGB( GREEN ) < 95 Then Return 1
PickColor MouseX() + 5, MouseY() - 5
If getRGB( GREEN ) > 85 And getRGB( GREEN ) < 95 Then Return 1
PickColor MouseX() - 5, MouseY() + 5
If getRGB( GREEN ) > 85 And getRGB( GREEN ) < 95 Then Return 1
PickColor MouseX() - 5, MouseY() - 5
If getRGB( GREEN ) > 85 And getRGB( GREEN ) < 95 Then Return 1
End Function
Oudon koodarin Fusion Game. Käytä hiirtä ja hiiren näppäimiä vapauttamaan energiaa.
Code: Select all
SCREEN 800,600
Type ATOM
Field X As Float
Field Y As Float
Field Material As Integer
Field Energy As Float
Field SpeedX As Float
Field SpeedY As Float
Field ElectAngle As Float
EndType
Dim AtomImages(2) As Integer
Const AT_Hydrogen=1
Const AT_Hydrogen2=2
Const AT_Hydrogen3=3
Const AT_Neutron=4
Const AT_Helium=5
Const MAX_Senter_Dist=200.0
Const Friction=0.95
Const targ=12
Global Fusion_CenterX As Float
Global Fusion_CenterY As Float
Fusion_CenterX=ScreenWidth()/2
Fusion_CenterY=ScreenHeight()/2
Global SPickATOM
Global IsPicked
Global Presure
Global Fusion_LineX1 As Float
Global Fusion_LineY1 As Float
Global Fusion_LineX2 As Float
Global Fusion_LineY2 As Float
Global Fusion_Timer As Integer
Global Fusion_NSpeedX As Float
Global Fusion_NSpeedY As Float
Global Fusion_Energy As Integer
Function GenImageElectron()
img=MakeImage(10,10)
DrawToImage img
Color 0,0,0:Dot 0,0:Dot 1,0:Dot 2,0:Dot 3,0:Color 85,106,128:Dot 4,0:Color 83,103,125:Dot 5,0:Color 0,0,0:Dot 6,0:Dot 7,0:Dot 8,0:Dot 9,0
Dot 0,1:Dot 1,1:Color 89,109,132:Dot 2,1:Color 89,110,134:Dot 3,1:Dot 4,1:Color 89,110,135:Dot 5,1:Color 86,107,129:Dot 6,1:Color 71,91,110:Dot 7,1:Color 0,0,0:Dot 8,1:Dot 9,1
Dot 0,2:Color 89,109,132:Dot 1,2:Color 89,110,134:Dot 2,2:Dot 3,2:Dot 4,2:Dot 5,2:Dot 6,2:Color 80,100,121:Dot 7,2:Color 59,76,95:Dot 8,2:Color 0,0,0:Dot 9,2
Dot 0,3:Color 92,113,137:Dot 1,3:Color 89,110,134:Dot 2,3:Dot 3,3:Dot 4,3:Dot 5,3:Color 89,110,132:Dot 6,3:Color 79,100,121:Dot 7,3:Color 61,80,98:Dot 8,3:Color 0,0,0:Dot 9,3
Color 85,107,129:Dot 0,4:Color 89,110,134:Dot 1,4:Dot 2,4:Dot 3,4:Dot 4,4:Dot 5,4:Color 86,107,129:Dot 6,4:Color 76,95,116:Dot 7,4:Color 61,76,95:Dot 8,4:Color 40,55,70:Dot 9,4
Color 83,103,125:Dot 0,5:Color 92,113,137:Dot 1,5:Color 89,110,134:Dot 2,5:Dot 3,5:Dot 4,5:Color 89,109,132:Dot 5,5:Color 80,100,121:Dot 6,5:Color 70,88,107:Dot 7,5:Color 53,70,86:Dot 8,5:Color 37,52,67:Dot 9,5
Color 0,0,0:Dot 0,6:Color 86,107,129:Dot 1,6:Color 89,110,134:Dot 2,6:Color 89,109,132:Dot 3,6:Color 86,107,129:Dot 4,6:Color 80,100,121:Dot 5,6:Color 71,89,110:Dot 6,6:Color 61,77,95:Dot 7,6:Color 46,61,76:Dot 8,6:Color 0,0,0:Dot 9,6
Dot 0,7:Color 71,89,110:Dot 1,7:Color 80,100,122:Dot 2,7:Color 79,98,121:Dot 3,7:Color 76,95,116:Dot 4,7:Color 70,88,107:Dot 5,7:Color 61,77,95:Dot 6,7:Color 47,62,79:Dot 7,7:Color 37,50,65:Dot 8,7:Color 0,0,0:Dot 9,7
Dot 0,8:Dot 1,8:Color 58,74,92:Dot 2,8:Color 61,79,98:Dot 3,8:Color 61,77,95:Dot 4,8:Color 53,70,86:Dot 5,8:Color 46,61,76:Dot 6,8:Color 37,50,65:Dot 7,8:Color 0,0,0:Dot 8,8:Dot 9,8
Dot 0,9:Dot 1,9:Dot 2,9:Dot 3,9:Color 38,53,68:Dot 4,9:Color 37,52,67:Dot 5,9:Color 0,0,0:Dot 6,9:Dot 7,9:Dot 8,9:Dot 9,9
DrawToScreen
Return img
EndFunction
Function GenImageNeutron()
img=MakeImage(17,17)
DrawToImage img
Color 0,0,0:Dot 0,0:Dot 1,0:Dot 2,0:Dot 3,0:Dot 4,0:Dot 5,0:Dot 6,0:Color 0,220,0:Dot 7,0:Dot 8,0:Color 0,197,0:Dot 9,0:Color 0,0,0:Dot 10,0:Dot 11,0:Dot 12,0:Dot 13,0:Dot 14,0:Dot 15,0:Dot 16,0
Dot 0,1:Dot 1,1:Dot 2,1:Dot 3,1:Color 0,218,17:Dot 4,1:Color 0,247,0:Dot 5,1:Color 0,254,16:Dot 6,1:Dot 7,1:Color 0,253,13:Dot 8,1:Color 0,243,19:Dot 9,1:Color 0,228,12:Dot 10,1:Color 0,185,0:Dot 11,1:Color 0,133,8:Dot 12,1:Color 0,0,0:Dot 13,1:Dot 14,1:Dot 15,1:Dot 16,1
Dot 0,2:Dot 1,2:Dot 2,2:Color 6,233,0:Dot 3,2:Color 0,254,16:Dot 4,2:Dot 5,2:Dot 6,2:Color 0,244,21:Dot 7,2:Color 0,254,16:Dot 8,2:Dot 9,2:Color 0,252,8:Dot 10,2:Color 0,219,20:Dot 11,2:Color 9,191,12:Dot 12,2:Color 7,128,2:Dot 13,2:Color 0,0,0:Dot 14,2:Dot 15,2:Dot 16,2
Dot 0,3:Dot 1,3:Color 0,228,12:Dot 2,3:Color 0,254,16:Dot 3,3:Dot 4,3:Color 0,255,19:Dot 5,3:Dot 6,3:Dot 7,3:Color 0,254,16:Dot 8,3:Dot 9,3:Dot 10,3:Color 0,243,19:Dot 11,3:Color 0,209,0:Dot 12,3:Color 0,167,10:Dot 13,3:Color 0,105,1:Dot 14,3:Color 0,0,0:Dot 15,3:Dot 16,3
Dot 0,4:Color 0,219,20:Dot 1,4:Color 0,254,16:Dot 2,4:Dot 3,4:Dot 4,4:Color 0,255,19:Dot 5,4:Dot 6,4:Dot 7,4:Dot 8,4:Color 0,254,16:Dot 9,4:Dot 10,4:Color 0,244,21:Dot 11,4:Color 0,219,20:Dot 12,4:Color 0,178,8:Dot 13,4:Color 9,138,0:Dot 14,4:Color 0,75,2:Dot 15,4:Color 0,0,0:Dot 16,4
Dot 0,5:Color 0,244,21:Dot 1,5:Color 0,255,19:Dot 2,5:Color 0,244,21:Dot 3,5:Color 0,255,19:Dot 4,5:Dot 5,5:Dot 6,5:Color 0,254,16:Dot 7,5:Dot 8,5:Dot 9,5:Dot 10,5:Color 0,244,21:Dot 11,5:Color 0,219,20:Dot 12,5:Color 0,187,3:Dot 13,5:Color 0,147,15:Dot 14,5:Color 0,93,9:Dot 15,5:Color 0,0,0:Dot 16,5
Dot 0,6:Color 0,255,19:Dot 1,6:Dot 2,6:Dot 3,6:Dot 4,6:Color 0,254,16:Dot 5,6:Color 0,244,21:Dot 6,6:Color 0,255,19:Dot 7,6:Dot 8,6:Dot 9,6:Color 0,254,16:Dot 10,6:Color 0,243,19:Dot 11,6:Color 0,218,17:Dot 12,6:Color 0,183,17:Dot 13,6:Color 0,147,15:Dot 14,6:Color 0,101,7:Dot 15,6:Color 0,0,0:Dot 16,6
Color 0,219,20:Dot 0,7:Color 0,255,19:Dot 1,7:Dot 2,7:Dot 3,7:Color 0,244,21:Dot 4,7:Color 0,255,19:Dot 5,7:Dot 6,7:Dot 7,7:Color 0,254,16:Dot 8,7:Color 0,255,19:Dot 9,7:Color 0,244,21:Dot 10,7:Color 0,228,12:Dot 11,7:Color 0,206,17:Dot 12,7:Color 0,183,17:Dot 13,7:Color 0,142,5:Dot 14,7:Color 3,98,5:Dot 15,7:Color 0,75,2:Dot 16,7
Color 0,219,20:Dot 0,8:Color 0,255,19:Dot 1,8:Dot 2,8:Dot 3,8:Dot 4,8:Dot 5,8:Dot 6,8:Dot 7,8:Dot 8,8:Color 0,254,16:Dot 9,8:Color 0,243,19:Dot 10,8:Color 0,219,20:Dot 11,8:Color 9,191,12:Dot 12,8:Color 0,167,10:Dot 13,8:Color 0,133,8:Dot 14,8:Color 0,93,9:Dot 15,8:Color 0,75,2:Dot 16,8
Color 9,191,12:Dot 0,9:Color 0,244,21:Dot 1,9:Color 0,255,19:Dot 2,9:Dot 3,9:Dot 4,9:Dot 5,9:Dot 6,9:Dot 7,9:Color 0,254,16:Dot 8,9:Color 0,244,21:Dot 9,9:Color 0,228,12:Dot 10,9:Color 0,206,17:Dot 11,9:Color 0,183,17:Dot 12,9:Color 0,147,15:Dot 13,9:Color 2,117,2:Dot 14,9:Color 4,90,7:Dot 15,9:Color 0,75,2:Dot 16,9
Color 0,0,0:Dot 0,10:Color 0,226,5:Dot 1,10:Color 0,244,21:Dot 2,10:Color 0,255,19:Dot 3,10:Dot 4,10:Dot 5,10:Color 0,244,21:Dot 6,10:Color 0,255,19:Dot 7,10:Color 0,243,19:Dot 8,10:Color 0,228,12:Dot 9,10:Color 0,206,17:Dot 10,10:Color 9,191,12:Dot 11,10:Color 0,167,10:Dot 12,10:Color 0,134,10:Dot 13,10:Color 0,101,7:Dot 14,10:Color 0,79,5:Dot 15,10:Color 0,0,0:Dot 16,10
Dot 0,11:Color 0,183,17:Dot 1,11:Color 0,219,20:Dot 2,11:Color 0,243,19:Dot 3,11:Color 0,244,21:Dot 4,11:Dot 5,11:Color 0,243,19:Dot 6,11:Color 0,228,12:Dot 7,11:Color 0,219,20:Dot 8,11:Color 0,206,17:Dot 9,11:Color 0,183,17:Dot 10,11:Color 0,167,10:Dot 11,11:Color 0,146,13:Dot 12,11:Color 0,112,8:Dot 13,11:Color 0,87,4:Dot 14,11:Color 0,70,6:Dot 15,11:Color 0,0,0:Dot 16,11
Dot 0,12:Color 0,134,10:Dot 1,12:Color 9,191,12:Dot 2,12:Color 0,206,17:Dot 3,12:Color 0,219,20:Dot 4,12:Dot 5,12:Color 0,218,17:Dot 6,12:Color 0,206,17:Dot 7,12:Color 0,197,0:Dot 8,12:Color 0,183,17:Dot 9,12:Color 0,167,10:Dot 10,12:Color 0,134,10:Dot 11,12:Color 0,112,8:Dot 12,12:Color 4,90,7:Dot 13,12:Color 0,79,5:Dot 14,12:Color 0,70,6:Dot 15,12:Color 0,0,0:Dot 16,12
Dot 0,13:Dot 1,13:Color 7,128,2:Dot 2,13:Color 0,183,17:Dot 3,13:Dot 4,13:Dot 5,13:Dot 6,13:Dot 7,13:Color 0,167,10:Dot 8,13:Color 0,153,5:Dot 9,13:Color 0,134,10:Dot 10,13:Color 0,112,8:Dot 11,13:Color 0,93,9:Dot 12,13:Color 0,79,5:Dot 13,13:Color 0,70,6:Dot 14,13:Color 0,0,0:Dot 15,13:Dot 16,13
Dot 0,14:Dot 1,14:Dot 2,14:Color 0,101,7:Dot 3,14:Color 0,147,15:Dot 4,14:Dot 5,14:Dot 6,14:Dot 7,14:Color 0,134,10:Dot 8,14:Color 0,112,8:Dot 9,14:Color 0,101,7:Dot 10,14:Color 0,87,4:Dot 11,14:Color 0,79,5:Dot 12,14:Color 0,70,6:Dot 13,14:Color 0,0,0:Dot 14,14:Dot 15,14:Dot 16,14
Dot 0,15:Dot 1,15:Dot 2,15:Dot 3,15:Color 0,79,5:Dot 4,15:Color 0,93,9:Dot 5,15:Color 5,99,7:Dot 6,15:Dot 7,15:Color 0,93,9:Dot 8,15:Color 4,90,7:Dot 9,15:Color 0,79,5:Dot 10,15:Color 0,70,6:Dot 11,15:Dot 12,15:Color 0,0,0:Dot 13,15:Dot 14,15:Dot 15,15:Dot 16,15
Dot 0,16:Dot 1,16:Dot 2,16:Dot 3,16:Dot 4,16:Dot 5,16:Dot 6,16:Color 0,78,4:Dot 7,16:Dot 8,16:Dot 9,16:Color 0,0,0:Dot 10,16:Dot 11,16:Dot 12,16:Dot 13,16:Dot 14,16:Dot 15,16:Dot 16,16
DrawToScreen
Return img
EndFunction
Function GenImageProton()
img=MakeImage(17,17)
DrawToImage img
Color 0,0,0:Dot 0,0:Dot 1,0:Dot 2,0:Dot 3,0:Dot 4,0:Dot 5,0:Dot 6,0:Color 220,0,0:Dot 7,0:Dot 8,0:Color 198,1,0:Dot 9,0:Color 0,0,0:Dot 10,0:Dot 11,0:Dot 12,0:Dot 13,0:Dot 14,0:Dot 15,0:Dot 16,0
Dot 0,1:Dot 1,1:Dot 2,1:Dot 3,1:Color 219,0,2:Dot 4,1:Color 244,0,0:Dot 5,1:Color 255,0,0:Dot 6,1:Dot 7,1:Dot 8,1:Color 244,0,0:Dot 9,1:Color 228,0,0:Dot 10,1:Color 185,0,0:Dot 11,1:Color 130,0,0:Dot 12,1:Color 0,0,0:Dot 13,1:Dot 14,1:Dot 15,1:Dot 16,1
Dot 0,2:Dot 1,2:Dot 2,2:Color 229,0,0:Dot 3,2:Color 255,0,0:Dot 4,2:Dot 5,2:Dot 6,2:Dot 7,2:Dot 8,2:Dot 9,2:Dot 10,2:Color 228,0,0:Dot 11,2:Color 193,0,0:Dot 12,2:Color 130,0,0:Dot 13,2:Color 0,0,0:Dot 14,2:Dot 15,2:Dot 16,2
Dot 0,3:Dot 1,3:Color 229,0,0:Dot 2,3:Color 255,0,0:Dot 3,3:Dot 4,3:Dot 5,3:Dot 6,3:Dot 7,3:Dot 8,3:Dot 9,3:Color 251,0,2:Dot 10,3:Color 243,0,0:Dot 11,3:Color 208,0,0:Dot 12,3:Color 169,0,0:Dot 13,3:Color 106,0,1:Dot 14,3:Color 0,0,0:Dot 15,3:Dot 16,3
Dot 0,4:Color 228,0,0:Dot 1,4:Color 255,0,0:Dot 2,4:Dot 3,4:Dot 4,4:Dot 5,4:Dot 6,4:Dot 7,4:Dot 8,4:Dot 9,4:Color 251,0,2:Dot 10,4:Color 244,0,0:Dot 11,4:Color 219,0,2:Dot 12,4:Color 184,0,0:Dot 13,4:Color 141,1,0:Dot 14,4:Color 77,0,0:Dot 15,4:Color 0,0,0:Dot 16,4
Dot 0,5:Color 244,0,0:Dot 1,5:Color 255,0,0:Dot 2,5:Dot 3,5:Dot 4,5:Dot 5,5:Dot 6,5:Dot 7,5:Dot 8,5:Dot 9,5:Dot 10,5:Color 244,0,0:Dot 11,5:Color 219,0,2:Dot 12,5:Color 185,0,0:Dot 13,5:Color 141,1,0:Dot 14,5:Color 90,2,0:Dot 15,5:Color 0,0,0:Dot 16,5
Dot 0,6:Color 255,0,0:Dot 1,6:Dot 2,6:Dot 3,6:Dot 4,6:Dot 5,6:Dot 6,6:Dot 7,6:Dot 8,6:Dot 9,6:Color 251,0,2:Dot 10,6:Color 243,0,0:Dot 11,6:Color 216,0,0:Dot 12,6:Color 185,0,0:Dot 13,6:Color 148,0,1:Dot 14,6:Color 101,3,0:Dot 15,6:Color 0,0,0:Dot 16,6
Color 220,0,0:Dot 0,7:Color 255,0,0:Dot 1,7:Dot 2,7:Dot 3,7:Dot 4,7:Dot 5,7:Dot 6,7:Dot 7,7:Dot 8,7:Dot 9,7:Color 251,0,2:Dot 10,7:Color 228,0,0:Dot 11,7:Color 208,0,0:Dot 12,7:Color 184,0,0:Dot 13,7:Color 148,0,1:Dot 14,7:Color 106,0,1:Dot 15,7:Color 77,0,0:Dot 16,7
Color 220,0,0:Dot 0,8:Color 255,0,0:Dot 1,8:Dot 2,8:Dot 3,8:Dot 4,8:Dot 5,8:Dot 6,8:Dot 7,8:Dot 8,8:Dot 9,8:Color 243,0,0:Dot 10,8:Color 219,0,2:Dot 11,8:Color 188,5,2:Dot 12,8:Color 164,1,0:Dot 13,8:Color 128,0,0:Dot 14,8:Color 94,0,0:Dot 15,8:Color 77,0,0:Dot 16,8
Color 198,1,0:Dot 0,9:Color 244,0,0:Dot 1,9:Color 255,0,0:Dot 2,9:Dot 3,9:Dot 4,9:Dot 5,9:Dot 6,9:Dot 7,9:Dot 8,9:Color 243,0,0:Dot 9,9:Color 222,1,0:Dot 10,9:Color 208,0,0:Dot 11,9:Color 185,0,0:Dot 12,9:Color 153,2,0:Dot 13,9:Color 117,0,2:Dot 14,9:Color 87,0,1:Dot 15,9:Color 77,0,0:Dot 16,9
Color 0,0,0:Dot 0,10:Color 228,0,0:Dot 1,10:Color 251,0,2:Dot 2,10:Dot 3,10:Color 255,0,0:Dot 4,10:Dot 5,10:Dot 6,10:Color 244,0,0:Dot 7,10:Color 233,0,1:Dot 8,10:Color 229,0,0:Dot 9,10:Color 208,0,0:Dot 10,10:Color 193,0,0:Dot 11,10:Color 164,1,0:Dot 12,10:Color 131,2,0:Dot 13,10:Color 100,1,0:Dot 14,10:Color 79,1,2:Dot 15,10:Color 0,0,0:Dot 16,10
Dot 0,11:Color 185,0,0:Dot 1,11:Color 220,0,0:Dot 2,11:Color 243,0,0:Dot 3,11:Color 244,0,0:Dot 4,11:Color 243,0,0:Dot 5,11:Dot 6,11:Color 229,0,0:Dot 7,11:Color 222,1,0:Dot 8,11:Color 208,0,0:Dot 9,11:Color 185,0,0:Dot 10,11:Color 164,1,0:Dot 11,11:Color 148,0,1:Dot 12,11:Color 113,0,0:Dot 13,11:Color 86,0,0:Dot 14,11:Color 77,0,0:Dot 15,11:Color 0,0,0:Dot 16,11
Dot 0,12:Color 131,2,0:Dot 1,12:Color 188,5,2:Dot 2,12:Color 210,3,0:Dot 3,12:Color 219,0,2:Dot 4,12:Color 216,0,0:Dot 5,12:Color 219,0,2:Dot 6,12:Color 210,3,0:Dot 7,12:Color 196,0,0:Dot 8,12:Color 184,0,0:Dot 9,12:Color 164,1,0:Dot 10,12:Color 136,0,1:Dot 11,12:Color 117,0,0:Dot 12,12:Color 87,0,1:Dot 13,12:Color 77,0,0:Dot 14,12:Color 69,0,0:Dot 15,12:Color 0,0,0:Dot 16,12
Dot 0,13:Dot 1,13:Color 130,0,0:Dot 2,13:Color 172,0,1:Dot 3,13:Color 184,0,0:Dot 4,13:Color 185,0,0:Dot 5,13:Color 184,0,0:Dot 6,13:Dot 7,13:Color 164,1,0:Dot 8,13:Color 153,2,0:Dot 9,13:Color 136,0,1:Dot 10,13:Color 113,0,0:Dot 11,13:Color 94,0,0:Dot 12,13:Color 84,0,0:Dot 13,13:Color 69,1,1:Dot 14,13:Color 0,0,0:Dot 15,13:Dot 16,13
Dot 0,14:Dot 1,14:Dot 2,14:Color 106,0,1:Dot 3,14:Color 136,0,1:Dot 4,14:Color 148,0,1:Dot 5,14:Color 141,1,0:Dot 6,14:Color 148,0,1:Dot 7,14:Color 136,0,1:Dot 8,14:Color 113,0,0:Dot 9,14:Color 100,1,0:Dot 10,14:Color 86,0,0:Dot 11,14:Color 77,0,0:Dot 12,14:Color 69,1,1:Dot 13,14:Color 0,0,0:Dot 14,14:Dot 15,14:Dot 16,14
Dot 0,15:Dot 1,15:Dot 2,15:Dot 3,15:Color 79,1,2:Dot 4,15:Color 90,2,0:Dot 5,15:Color 106,0,1:Dot 6,15:Color 94,0,0:Dot 7,15:Dot 8,15:Color 90,2,0:Dot 9,15:Color 77,0,0:Dot 10,15:Color 76,0,0:Dot 11,15:Color 69,0,0:Dot 12,15:Color 0,0,0:Dot 13,15:Dot 14,15:Dot 15,15:Dot 16,15
Dot 0,16:Dot 1,16:Dot 2,16:Dot 3,16:Dot 4,16:Dot 5,16:Dot 6,16:Color 76,0,0:Dot 7,16:Color 77,0,0:Dot 8,16:Dot 9,16:Color 0,0,0:Dot 10,16:Dot 11,16:Dot 12,16:Dot 13,16:Dot 14,16:Dot 15,16:Dot 16,16
DrawToScreen
Return img
EndFunction
HotSpot ON
AtomImages(0)=GenImageProton()
AtomImages(1)=GenImageNeutron()
AtomImages(2)=GenImageElectron()
HotSpot OFF
Color cbwhite
Function MakeGame(energy,hyd1,hyd2,hyd3,neut)
ScrHalfW=ScreenWidth()/2
ScrHalfH=ScreenHeight()/2
Randomize Timer()
giveEnergy=energy/(hyd1+hyd2+hyd3+neut)
For i=1 To hyd1
AT.ATOM=New(ATOM)
AT\Material=1
dist#=Rnd(0,MAX_Senter_Dist)
angle#=Rnd(360)
AT\X=ScrHalfW+Cos(angle)*dist
AT\Y=ScrHalfH+Sin(angle)*dist
AT\ElectAngle=Rnd(360)
AT\Energy=giveEnergy
Next i
For i=1 To hyd2
AT.ATOM=New(ATOM)
AT\Material=2
dist#=Rnd(0,MAX_Senter_Dist)
angle=Rnd(360)
AT\X=ScrHalfW+Cos(angle)*dist
AT\Y=ScrHalfH+Sin(angle)*dist
AT\ElectAngle=Rnd(360)
AT\Energy=giveEnergy
Next i
For i=1 To hyd3
AT.ATOM=New(ATOM)
AT\Material=3
dist#=Rnd(0,MAX_Senter_Dist)
angle=Rnd(360)
AT\X=ScrHalfW+Cos(angle)*dist
AT\Y=ScrHalfH+Sin(angle)*dist
AT\ElectAngle=Rnd(360)
AT\Energy=giveEnergy
Next i
For i=1 To neut
AT.ATOM=New(ATOM)
AT\Material=4
dist#=Rnd(0,MAX_Senter_Dist)
angle=Rnd(360)
AT\X=ScrHalfW+Cos(angle)*dist
AT\Y=ScrHalfH+Sin(angle)*dist
AT\ElectAngle=Rnd(360)
AT\Energy=giveEnergy
Next i
EndFunction
Function DrawATOMS()
For AT.ATOM=Each ATOM
Select AT\Material
Case 1
DrawImage AtomImages(0),AT\X,AT\Y
dx#=AT\X+Cos(AT\ElectAngle)*(AT\Energy/10.0-(AT\SpeedX+AT\SpeedY))
dy#=AT\Y+Sin(AT\ElectAngle)*(AT\Energy/10.0-(AT\SpeedX+AT\SpeedY))
DrawImage AtomImages(2),dx#,dy#
Case 2
DrawImage AtomImages(0),AT\X-8,AT\Y
DrawImage AtomImages(1),AT\X+8,AT\Y
dx#=AT\X+Cos(AT\ElectAngle)*(AT\Energy/10.0-(AT\SpeedX+AT\SpeedY))
dy#=AT\Y+Sin(AT\ElectAngle)*(AT\Energy/10.0-(AT\SpeedX+AT\SpeedY))
DrawImage AtomImages(2),dx#,dy#
Case 3
DrawImage AtomImages(0),AT\X-8,AT\Y
DrawImage AtomImages(1),AT\X+8,AT\Y
DrawImage AtomImages(1),AT\X,AT\Y-14
dx#=AT\X+Cos(AT\ElectAngle)*(AT\Energy/10.0-(AT\SpeedX+AT\SpeedY))
dy#=AT\Y+Sin(AT\ElectAngle)*(AT\Energy/10.0-(AT\SpeedX+AT\SpeedY))
DrawImage AtomImages(2),dx#,dy#
Case 4
DrawImage AtomImages(1),AT\X,AT\Y
Case 5
DrawImage AtomImages(0),AT\X-8,AT\Y
DrawImage AtomImages(1),AT\X+8,AT\Y
DrawImage AtomImages(1),AT\X-16,AT\Y-14
DrawImage AtomImages(0),AT\X,AT\y-14
dx#=Cos(AT\ElectAngle)*(AT\Energy/10.0-(AT\SpeedX+AT\SpeedY))+10
dy#=Sin(AT\ElectAngle)*(AT\Energy/10.0-(AT\SpeedX+AT\SpeedY))+10
DrawImage AtomImages(2),AT\X+dx#,AT\Y+dy#
DrawImage AtomImages(2),AT\X-dx#,AT\Y-dy#
EndSelect
Next AT
EndFunction
Function CalculatePhysics(x=400,y=300)
Fusion_NSpeedX=0
Fusion_NSpeedY=0
Count=0
For AT.ATOM=Each ATOM
For AT2.ATOM=Each ATOM
If AT<>AT2
dist#=Distance(AT\X,AT\Y,AT2\X,AT2\Y)
If dist#<Max(Min((AT\Energy*10-(AT\SpeedX+AT\SpeedY)),50),0)
angle#=GetAngle(AT\X,AT\Y,x,y)
power# = AT\Energy*10 / (dist#+20)^2
accelationX#=Cos(angle#)*power#
accelationY#=-Sin(angle#)*power#
AT\SpeedX=AT\SpeedX - accelationX#
AT\SpeedY=AT\SpeedY - accelationY#
AT2\SpeedX=AT2\SpeedX + accelationX#
AT2\SpeedY=AT2\SpeedY + accelationY#
EndIf
EndIf
Next AT2
dist#=Distance(AT\X,AT\Y,x,y)
If dist#>MAX_Senter_Dist+10-Presure And AT\Material<>AT_Helium
angle#=GetAngle(AT\X,AT\Y,x,y)
power# = (100000.0-Presure) / (dist#+20)^2
accelationX#=Cos(angle#)*power#
accelationY#=-Sin(angle#)*power#
AT\SpeedX=AT\SpeedX + accelationX#
AT\SpeedY=AT\SpeedY + accelationY#
EndIf
If AT\Material=AT_Helium
angle#=GetAngle(AT\X,AT\Y,x,y)
power# = (10000.0+Presure) / (dist#+20)^2
accelationX#=Cos(angle#)*power#
accelationY#=-Sin(angle#)*power#
AT\SpeedX=AT\SpeedX - accelationX#
AT\SpeedY=AT\SpeedY - accelationY#
If dist#>1000 Then Delete AT
EndIf
AT\Electangle=WrapAngle(AT\Electangle+3)
Count=Count+1
Fusion_NSpeedX=Fusion_NSpeedX+Abs(AT\SpeedX)
Fusion_NSpeedY=Fusion_NSpeedY+Abs(AT\SpeedY)
Next AT
Fusion_NSpeedX=Fusion_NSpeedX/Count
Fusion_NSpeedY=Fusion_NSpeedY/Count
EndFunction
Function UpdatePhysics()
PickATOM.ATOM=NULL
fDist#=50.0
For AT.ATOM=Each ATOM
AT\SpeedX=AT\SpeedX*Friction
AT\SpeedY=AT\SpeedY*Friction
AT\X=AT\X+AT\SpeedX
AT\Y=AT\Y+AT\SpeedY
Next AT
EndFunction
Function Fusion()
PickATOM.ATOM=NULL
fDist#=50.0
For AT.ATOM=Each ATOM
If Timer()<Fusion_Timer
For AT2.ATOM=Each ATOM
If AT<>AT2 And Distance(AT\X,AT\Y,AT2\X,AT2\Y)<20 And Abs(AT\SpeedX)>Fusion_SpeedX And Abs(AT\SpeedY)>Fusion_SpeedY
If AT\Material=AT_Hydrogen2 And AT2\Material=AT_Hydrogen2
AT\Material=AT_Helium
Fusion_Energy=Fusion_Energy+(AT\Energy+AT2\Energy)-(AT\Energy/2+AT2\Energy/2)
AT\Energy=AT\Energy/3+AT2\Energy/3
If (Abs(AT\SpeedX)+Abs(AT\SpeedY))/2<(Abs(AT2\SpeedX)+Abs(AT2\SpeedY))/2
AT\SpeedX=AT2\SpeedX
AT\SpeedY=AT2\SpeedY
EndIf
Delete AT2
ElseIf AT\Material=AT_Hydrogen And AT2\Material=AT_Hydrogen3
AT\Material=AT_Helium
AT\Energy=AT\Energy/2
Fusion_Energy=Fusion_Energy+(AT\Energy+AT2\Energy)-(AT\Energy/2+AT2\Energy/3)
If (Abs(AT\SpeedX)+Abs(AT\SpeedY))/2<(Abs(AT2\SpeedX)+Abs(AT2\SpeedY))/2
AT\SpeedX=AT2\SpeedX
AT\SpeedY=AT2\SpeedY
EndIf
Delete AT2
ElseIf AT\Material=AT_Hydrogen And AT2\Material=AT_Neutron
AT\Material=AT_Hydrogen2
AT\Energy=AT\Energy+AT2\Energy
If (Abs(AT\SpeedX)+Abs(AT\SpeedY))/2<(Abs(AT2\SpeedX)+Abs(AT2\SpeedY))/2
AT\SpeedX=AT2\SpeedX
AT\SpeedY=AT2\SpeedY
EndIf
Delete AT2
ElseIf AT\Material=AT_Neutron And AT2\Material=AT_Hydrogen2
AT\Material=AT_Hydrogen3
AT\Energy=AT\Energy+AT2\Energy
If (Abs(AT\SpeedX)+Abs(AT\SpeedY))/2<(Abs(AT2\SpeedX)+Abs(AT2\SpeedY))/2
AT\SpeedX=AT2\SpeedX
AT\SpeedY=AT2\SpeedY
EndIf
Delete AT2
ElseIf AT\Material=AT_Hydrogen3 And AT2\Material=AT_Hydrogen3
AT\Material=AT_Helium
Fusion_Energy=Fusion_Energy+(AT\Energy+AT2\Energy)-(AT\Energy/4+AT2\Energy/4)
AT2\Material=4
AT3.ATOM=New(ATOM)
AT3\Material=4
AT3\X=(AT\X+AT2\X)/2
AT3\Y=(AT\Y+AT2\Y)/2
If (Abs(AT\SpeedX)+Abs(AT\SpeedY))/2<(Abs(AT2\SpeedX)+Abs(AT2\SpeedY))/2
AT\SpeedX=AT2\SpeedX
AT\SpeedY=AT2\SpeedY
EndIf
ElseIf AT\Material=AT_Hydrogen3 And AT2\Material=AT_Hydrogen2
Fusion_Energy=Fusion_Energy+(AT\Energy+AT2\Energy)-(AT\Energy/3+AT2\Energy/4)
AT\Material=AT_Helium
AT\Energy=AT\Energy/3+AT2\Energy/2
AT2\Material=4
If (Abs(AT\SpeedX)+Abs(AT\SpeedY))/2<(Abs(AT2\SpeedX)+Abs(AT2\SpeedY))/2
AT\SpeedX=AT2\SpeedX
AT\SpeedY=AT2\SpeedY
EndIf
EndIf
EndIf
Next AT2
EndIf
dist#=Distance(AT\X,AT\Y,MouseX(),MouseY())
If MouseDown(1) And dist#<60 And IsPicked=False
If dist#<fDist#
fDist#=dist#
SPickATOM=ConvertToInteger(AT)
EndIf
EndIf
Next AT
PickATOM.ATOM=ConvertToType(SPickATOM)
If PickATOM<>NULL
IsPicked=True
angle#=-GetAngle(PickATOM\X,PickATOM\Y,MouseX(),MouseY())+180
dist#=Distance(PickATOM\X,PickATOM\Y,MouseX(),MouseY())
PickATOM\SpeedX=PickATOM\SpeedX-Cos(angle#)
PickATOM\SpeedY=PickATOM\SpeedY-Sin(angle#)
EndIf
If MouseUp(1)
If PickATOM<>NULL
PickATOM\SpeedX=PickATOM\SpeedX*3
PickATOM\SpeedY=PickATOM\SpeedY*3
Fusion_LineX1=MouseX()
Fusion_LineY1=MouseY()
Fusion_Timer=Timer()+500
EndIf
SPickATOM=ConvertToInteger(NULL)
IsPicked=False
EndIf
If MouseDown(2) Then
Presure=Max(Min(Presure+1,100),0)
Else
If Presure>0 Then Presure-5
EndIf
size#=MAX_Senter_Dist+10-Presure
Circle 400-size/2,300-size/2,size,OFF
EndFunction
Function MainLoop()
Repeat
CalculatePhysics(Fusion_CenterX,Fusion_CenterY)
UpdatePhysics()
Fusion()
DrawATOMS()
If KeyHit(cbkeyr) Then
For AT.ATOM=Each ATOM
Delete AT
Next AT
MakeGame(Rand(1000,30000),Rand(1,20),Rand(1,20),Rand(1,20),Rand(1,20))
Fusion_Energy=0
EndIf
Text 0,0,"Fps: "+FPS()
Text 0,12,"Hit R to reset game."
Text 0,24,"Relased Energy:"+Fusion_Energy
DrawScreen
Forever
EndFunction
MakeGame(10000, 30, 0, 0, 30)
MainLoop()
-
- Active Member
- Posts: 135
- Joined: Fri Mar 07, 2008 8:49 pm
Re: Pikku pelit
Löysin bugin. Zombit kävivät kähmimässä ja hp tippui -1:een ( ). Oli muuten mahtavaa, kun tuli kunnon tappomeininki. En muista sellaista CB-peliä pelanneeni.naabster wrote:Zombie killer 2
Edit: Alussa ukkeli oli seinän sisällä. Käänsin sitä jä lähdin menemään huoneen nurkkaa päin seinää pitkin ja peruutin nurkan läpi. Tarkoituksellista?
Re: Pikku pelit
Noniin. Sain valmiiksi tämmösen tosi pienen pikajuoksu pelin.
Eli olet pelissä vihreä pallukka radalla 3 ja voit juosta eteenpäin näpyttämällä ylä ja ala nuolia.
screeni:
(kun saan linkitettyä)
Eli olet pelissä vihreä pallukka radalla 3 ja voit juosta eteenpäin näpyttämällä ylä ja ala nuolia.
screeni:
(kun saan linkitettyä)
programmer of DSG wrote:EDIT:aika hauska peli, vähän tylsä
-
- Active Member
- Posts: 133
- Joined: Mon Aug 27, 2007 8:13 pm
Re: Pikku pelit
Käynpäs! Minulla ei vaan ole ikinä mitään sanottavaa. : ]Mysterious Coder ei käy enää näillä foorumeilla,
Kyllä minä osaan, mutta kun mieli on tällasen kaaoksen vallassa, niin ei siitä mitään tule.
Re: Pikku pelit
Aloitusviestissä oli paljon kirjoitusvirheitä.
Re: Pikku pelit
Tein itsekin huvikseni virtuaalilemmikin. Tämän nimi on Härö Häiskä
Tyypissä näkyy seurauksia jos statsit menee liian alas (tai joissain tapauksissa ylös).
Uutta ja ennen näkemätöntä:
Tyyppi lihoo!
Tyypissä näkyy seurauksia jos statsit menee liian alas (tai joissain tapauksissa ylös).
Uutta ja ennen näkemätöntä:
Tyyppi lihoo!
EDIT:
Olkaa kilttejä ja kommentoikaa!
- Attachments
-
- HR.zip
- viellä zippinä...
- (609.99 KiB) Downloaded 603 times
-
- HR.rar
- (606.68 KiB) Downloaded 561 times
-
- nimetön.jpg (18.81 KiB) Viewed 26542 times
Last edited by nevssons on Sun Aug 24, 2008 4:56 pm, edited 4 times in total.
Koodarina kohtalainen, henkilönä vittumainen
Re: Pikku pelit
Tämä ei oikeastaa on peli, mutta en viitsinyt tehä mitään threadia tälle.
Code: Select all
FrameLimit 30
Global blinker, blink, cmd$
SCREEN 500,300
ClsColor 0,0,128
fileopened=False
base:
Repeat
cmdinput(0,0,CurrentDir())
DrawScreen
Until KeyHit(cbkeyreturn)
CloseInput
cmdlower$=Lower(cmd)
Select cmdlower$
Case "help"
Print "Tämän hetkiset komennot ovat: "
Print "help"
Print "e"+"xit"
Print "chdir <kansio>"
Print "upperdir"
Print "sysroot"
Print "systime"
Print "sysdate"
Print "defrag"
Print "checkdisk"
Print "exec <tiedosto>"
Print "d"+"elete <tiedosto>"
WaitKey
Goto base
Case "upperdir"
ChDir ".."
Goto base
Case "exit"
End
Goto base
Case "systime"
Repeat
Text 0,0,Time()
DrawScreen
Until KeyHit(cbkeyreturn)
Goto base
Case "sysdate"
Repeat
Text 0,0,Date()
DrawScreen
Until KeyHit(cbkeyreturn)
Goto base
Case "defrag"
Execute "dfrg.msc"
Goto base
Case "sysroot"
For i=0 To 100
ChDir ".."
Next i
Goto base
Case "checkdisk"
Execute "chkdsk"
Goto base
EndSelect
If Mid(cmdlower$,1,5)="chdir" Then
myselecteddir$=Mid(cmdlower$,7)
moddeddir$=Upper(Right(myselecteddir$,1))
ChDir moddeddir$
EndIf
If Mid(cmdlower$,1,6)="delete" Then
mydelete$=Mid(cmdlower$,8)
If FileExists(mydelete$) Then
DeleteFile mydelete$
EndIf
EndIf
If Mid(cmdlower$,1,4)="exec" Then
myexec$=Mid(cmdlower$,6)
If FileExists(myexec$) Then
Execute myexec$
EndIf
EndIf
Goto base
Function cmdinput(x,y,optional$)
Color cbwhite
Text x,y,optional$+cmd
Locate -80000,-80000
Cmd=Input("")
If TIMER()>blinker+400 Then
blink=Not blink
blinker=TIMER()
EndIf
If blink Then
Color cbwhite
Box TextWidth(optional$+cmd)+2,y,7,14
EndIf
Return cmd
EndFunction
Hengität nyt manuaalisesti.
- kaneli2000
- Guru
- Posts: 1059
- Joined: Mon Mar 17, 2008 2:40 pm
- Location: Lempäälä
Re: Pikku pelit
Tein tommosen pienen sorsastuspelin, jossa (miten voi olla :O) ammutaan sorsia!
Ohessa zippi, pistän rarinkin hiukkasen myöhemmin.
Edit: linkin versio mavitti, postaan pian toimivan version.
Ohessa zippi, pistän rarinkin hiukkasen myöhemmin.
Edit: linkin versio mavitti, postaan pian toimivan version.
Last edited by kaneli2000 on Thu Sep 11, 2008 2:58 pm, edited 1 time in total.
I see the rainbow rising
Re: Pikku pelit
Tuossa sorsastus pelissä minulla tulee aina mav.
EDIT:
Siis loadingissa.
Re: Pikku pelit
Samavika. Loading... tulee kestää vähä aikaa ja MAV. Jos sais toimimaan ni ois kai se pikkupeliksi luokitettu.skinkken wrote:Tuossa sorsastus pelissä minulla tulee aina mav.
EDIT:Siis loadingissa.
- kaneli2000
- Guru
- Posts: 1059
- Joined: Mon Mar 17, 2008 2:40 pm
- Location: Lempäälä
Re: Pikku pelit
Thäääh? Odotas katson...skinkken wrote:EDIT:Siis loadingissa.
Edit: Juu MAVi "löytyi", mutten tiedä miksi se tulee (löytymisellä tarkoitan, että jos yhden khdan ottaa pois mavi lähtee, mutt peli ei toimi.). Taidan koodata koko roskaan uusiksi.
Aika hyvä alku -_-.
I see the rainbow rising
-
- Advanced Member
- Posts: 349
- Joined: Mon Aug 27, 2007 9:00 pm
- Location: Lapinjärvi, Finland
- Contact:
Re: Pikku pelit
Tässäpä oma pieni pelini
Ja tämän innoituksenahan on toiminut tämä.
Code: Select all
SCREEN 640,480
Global sh,sw
sw=ScreenWidth()
sh=ScreenHeight()
Type flow
Field x#
Field y#
Field ang#
Field voima
Field sx#
Field sY#
Field väri#
Field angplus#
End Type
Const PAKSUUS = 10
Dim pala(2,4) As Float
pala(2,1)=10
pala(1,1)=SH-10-PAKSUUS
Dim pallo(3) As Float '0x 1y 2sx 3sy
Global pisteetcom, pisteethuman
Global comspeed As Float
Global gamepause, setupvalinta, setuptila
comspeed=1.00
Const laattoja = 5
Const PALANOPEUS = 7
Const VOIMAKERROIN =0.7
Const pallobufferkoko = 20
Dim pallobuffer(pallobufferkoko,2) As Float
Global flowmäärä, maksimiflowmäärä
maksimiflowmäärä=200
StartNewGame()
Repeat
SetWindow "Cool Pong - Tietokone: "+pisteetcom+" Pelaaja: "+pisteethuman
UpdatePalat()
UpdateFlow()
UpdatePallo()
Setup()
DrawScreen
Forever
Function StartNewGame()
pallo(0)=SW/2
pallo(1)=SH/2
pallo(2)=0
pallo(3)=0
DeleteFlow()
pala(1,2)=11
pala(2,2)=11
pala(2,3)=100
pala(1,3)=100
pala(1,4)=0.0
pala(2,4)=0.0
pallobuffer(0,0)=pallo(0)
pallobuffer(0,1)=pallo(1)
For i=1 To pallobufferkoko
pallobuffer(i,0)=pallo(0)
pallobuffer(i,1)=pallo(1)
Next i
End Function
Function Scoring(_voitto)
Repeat
Color 64,64,64
Box 100,100,SW-200,100,0
Color 96,96,96
Box 102,102,SW-204,96,0
Color cbwhite
If _voitto>0 Then
Text 130,125,"Onneksi olkoon. Sinä voitit tämän erän."
Else
Text 130,125,"Valitettavasti tietokone voitti tämän erän."
EndIf
If pisteetcom>pisteethuman Then
Text 130,165,"Tilanne on nyt "+pisteetcom+":"+pisteethuman+ " tietokoneen hyväksi."
ElseIf pisteetcom=pisteethuman Then
Text 130,165,"Tilanne on nyt "+pisteethuman+":"+pisteetcom+ " tasapeli."
Else
Text 130,165,"Tilanne on nyt "+pisteethuman+":"+pisteetcom+ " sinun hyväksesi."
EndIf
DrawScreen
Until KeyHit(cbkeyReturn)
StartNewGame()
End Function
Function UpdatePallo()
If Not gamepause Then
If pallo(1)>SH-5 Then
pisteetcom=pisteetcom+1
Scoring(-1)
ElseIf pallo(1)<5 Then
pisteethuman=pisteethuman+1
Scoring(1)
EndIf
If pallo(0)>SW-15 Then pallo(0)=SW-15 : pallo(2)=-pallo(2)
If pallo(0)<5 Then pallo(0)=5 : pallo(2)=-pallo(2)
pallo(0)=pallo(0)+pallo(2)
pallo(1)=pallo(1)+pallo(3)
If pallo(2) Or pallo(3) Then
For i=0 To pallobufferkoko
vx#=tx#
vy#=ty#
If i=0 Then
tx#=pallobuffer(i,0)
ty#=pallobuffer(i,1)
pallobuffer(i,0)=pallo(0)
pallobuffer(i,1)=pallo(1)
Else
i2=(i-1)
tx2#=pallobuffer(i,0)
ty2#=pallobuffer(i,1)
pallobuffer(i,0)=tx#
pallobuffer(i,1)=ty#
tx#=tx2#
ty#=ty2#
EndIf
Next i
EndIf
EndIf
i=pallobufferkoko
While i>-1
If i=0 Then
Color 255,Rnd(0.2,0.4)*255,0
Else
väri#=max(Min( ( 255-((255/pallobufferkoko)*i)+Rand(20,-20) ) ,255.0),0.0)
Color väri#,Int(väri#*Rnd(0.4,0.6)),0
EndIf
Circle pallobuffer(i,0)+4,pallobuffer(i,1),8-(i/3),1
i-1
Wend
End Function
Function UpdatePalat()
spread=30
For i=1 To 2
seis=0
If i=1 Then
If Not gamepause Then
If KeyDown(cbkeyup) And pala(i,4)=<1.0 And pala(i,4)=>0.0 Then
AddFlow(pala(i,0)+pala(i,3)/2,pala(i,1)-PAKSUUS,Rand(90-spread,90+spread))
pala(i,4)=pala(i,4)+0.01
seis=1
EndIf
pala(i,2)=( KeyDown(cbkeyright)-KeyDown(cbkeyleft) )
EndIf
If pala(i,4)=>0.0 Then
Color Min(pala(i,4)*255,255),Max(Min(255-pala(i,4)*255,255),0),0
Else
Color 0,max(Min(255+pala(i,4)*255,255),0),Max(Min(-pala(i,4)*255,255),0)
EndIf
Else
If Not gamepause Then
If pala(i,0)+(pala(i,3)/2)<pallo(0) Then
pala(i,2)=comspeed
ElseIf pala(i,0)+(pala(i,3)/2)>pallo(0) Then
pala(i,2)=-comspeed
EndIf
If pala(i,4)=<1.0 And pala(i,4)=>0.0 Then
AddFlow(pala(i,0)+pala(i,3)/2,pala(i,1)+PAKSUUS,Rand(270-spread,270+spread))
pala(i,4)=pala(i,4)+0.01
seis=1
EndIf
EndIf
Color 255,0,0
EndIf
If Not gamepause Then
If pala(i,4)>1.0 Then Pala(i,4)=-pala(i,4)*2 : seis=1
If pala(i,4)<0.0 Then
Pala(i,4)=Min(pala(i,4)+0.007,0.0)
ElseIf seis=0 And pala(i,4)>0.0 Then
pala(i,4)=Max(pala(i,4)-0.0050,0.0)
EndIf
If pala(i,0)<0 Then
pala(i,0)=0
ElseIf pala(i,0)>(SW-pala(i,3)) Then
pala(i,0)=SW-pala(i,3)
EndIf
If abs((pala(2,0)+pala(2,3)/2)-pallo(0))<COMSPEED*2 Then pala(2,2)=0.0
pala(i,0)=pala(i,0)+(PALANOPEUS*pala(i,2))
x=pallo(0)
y=pallo(1)
If x>pala(i,0) And x<(pala(i,0)+pala(i,3)) And Abs(y-pala(i,1))=<PAKSUUS Then
If pallo(3)>0 Then
pallo(1)=pala(i,1)-15
Else
pallo(1)=pala(i,1)+PAKSUUS+5
EndIf
pallo(3)=-pallo(3)
pallo(2)=pallo(2)+pala(i,2)*2
EndIf
EndIf
Box pala(i,0),pala(i,1),pala(i,3),PAKSUUS,1
Next i
End Function
Function AddFlow(_x#,_y#,_angle#,_speed#=5.0)
'If flowmäärä<maksimiflowmäärä Then
f.flow=New(flow)
f\x=_x#
f\y=_y#
f\ang=WrapAngle(_angle#)
f\sx=Cos(f\ang)*_speed#
f\sy=-Sin(f\ang)*_speed#
f\voima=1
flowmäärä+1
'EndIf
End Function
Function DeleteFlow()
For f.flow = Each flow
Delete f
Next f
flowmäärä=0
End Function
Function Setup()
If KeyHit(cbkeyspace) Then gamepause=Not gamepause
If gamepause Then
setupvalinta=setupvalinta-KeyHit(cbkeyleft)+KeyHit(cbkeyright)
If setupvalinta=1 Then
leveys=SW-200
korkeus=60
comspeed=Min(Max(comspeed+(UpKey()-DownKey())*0.01,0.25),5.0)
Color cbwhite
Box 110,110,10,10,1
Text 110,130,"Tietokoneen mailan nopeus: "+Float(comspeed*100)+" %."
Color 128,128,128
Box 130,110,10,10,1
Box 150,110,10,10,1
ElseIf setupvalinta=2 Then
leveys=SW-200
korkeus=60
Color cbwhite
Box 130,110,10,10,1
Text 110,130,"Ohjeet"
Color 128,128,128
Box 110,110,10,10,1
Box 150,110,10,10,1
If KeyHit(cbkeyreturn) Then setuptila=1 : ClearKeys
If setuptila=1 Then
If KeyHit(cbkeyreturn) Then setuptila=0 : ClearKeys
leveys=SW-200
korkeus=SH-300
Color cbwhite
Text 110,170,"Ohjaa palava meteoroidi punaisen mailan taakse."
Text 110,190,"Voit käyttää hiukkassuihkua ylöspäin näppäimestä."
Text 110,210,"Varo hiukkassuihkun ylikuumentumista."
Text 110,230,"Mailasi liikkuu sivusuunnassa nuolinäppäimistä."
Text 110,250,"Voit säätää vaikeusastetta valikosta."
EndIf
ElseIf setupvalinta=3 Then
Leveys=SW-200
korkeus=60
Color cbwhite
Box 150,110,10,10,1
Text 110,130,"Lopeta"
Color 128,128,128
Box 110,110,10,10,1
Box 130,110,10,10,1
If KeyHit(cbkeyreturn) Then End
ElseIf setupvalinta<1 Then
setupvalinta=1
ElseIf setupvalinta>3 Then
setupvalinta=3
EndIf
Color 64,64,64
Box 100,100,leveys,korkeus,0
Color 96,96,96
Box 102,102,leveys-4,korkeus-4,0
EndIf
End Function
Function UpdateFlow()
For f.flow = Each flow
If Not gamepause Then
f2.flow=First(flow)
f2 = After(f)
'vang#=f\ang
While f2<>NULL
etä#=Distance(f\x,f\y,f2\x,f2\y)
maxetä#=40.0
If etä<maxetä Then
f\ang=Curveangle2(f2\ang,f\ang,70.0)
f\sx=(f\sx+Cos(f\ang))*0.8
f\sy=(f\sy-Sin(f\ang))*0.8
If abs(f\ang-f2\ang)<5.0 And etä<20.0 Then
f\voima=f\voima+1
Delete f2
flowmäärä=flowmäärä-1
EndIf
EndIf
f2 = After(f2)
Wend
'f\angplus=f\ang-vang
f\x=f\x+(f\sx#/1.5)
f\y=f\y+(f\sy#/1.5)
'f\ang=f\ang+f\angplus
EndIf
poisto=0
If f\x<sw And f\x>0 And f\y<sh And f\y>0 Then
f\väri=-Sin(f\ang)
If f\väri<-0.75 Then Color 0,255,0
If f\väri<-0.4 Then Color 128,255,0
If f\väri>-0.4 Then Color 255,255,0
If f\väri>0.4 Then Color 255,128,0
If f\väri>0.75 Then Color 255,0,0
kerroin3#=2.0
kerroin4#=(1+(f\voima*VOIMAKERROIN))*kerroin3#
Line f\x,f\y,f\x+f\sx*kerroin4#,f\y+f\sy*kerroin4#
Else
'If f\x>sw Or f\x<0 Then
' f\sx#=-f\sx#
' f\x=Max(0,Min(sw,f\x))
'EndIf
'If f\y>sh Or f\y<0 Then
' f\sy#=-f\sy#
' f\y=Max(0,Min(sh,f\y))
'EndIf
poisto=1
EndIf
If Not gamepause Then
If poisto Then
Delete f
flowmäärä=flowmäärä-1
ElseIf Distance(pallo(0),pallo(1),f\x,f\y)<10 Then
pallo(2)=Max(Min( pallo(2)+(f\sx*(VOIMAKERROIN*f\voima)/7),12),-12)
pallo(3)=Max(Min( pallo(3)+(f\sy*(VOIMAKERROIN*f\voima)/7),12),-12)
EndIf
EndIf
Next f
End Function
Function CurveAngle2(targetangle#,oldangle#,incre#) 'Curves "oldangle" to "targetangle" by "incre" (e.g.homing missile)
targetangle = WrapAngle(targetangle) : oldangle = WrapAngle(oldangle)
If (oldangle + 360) - targetangle < targetangle - oldangle Then oldangle = 360 + oldangle
If (targetangle + 360) - oldangle < oldangle - targetangle Then targetangle = 360 + targetangle
oldangle = oldangle - (oldangle-targetangle) / incre
Return oldangle
End Function
Otto Martikainen a.k.a. MetalRain, otto90x, kAATOSade.
Runoblogi, vuodatusta ja sekoiluja.
Runoblogi, vuodatusta ja sekoiluja.
- kaneli2000
- Guru
- Posts: 1059
- Joined: Mon Mar 17, 2008 2:40 pm
- Location: Lempäälä
Re: Pikku pelit
Huhhuh, olipas sorsastuksen kodaamisessa urakka (ensimmäisen version exe tosiaan mavitti, koska 6 v. sukulaiseni oli mennyt jotain söheltämään -_-) mutta sain kuitenkin valmiiksi.
Eli NYT vihdoin saan julkaistua!
Ja otolle: pelisi oli aikas hauskanoloinen ja hyvin toteutettu!
Eli NYT vihdoin saan julkaistua!
Ja otolle: pelisi oli aikas hauskanoloinen ja hyvin toteutettu!
- Attachments
-
- Teh sorsatuspeli.zip
- (1.1 MiB) Downloaded 496 times
I see the rainbow rising
-
- Forum Veteran
- Posts: 2396
- Joined: Tue Aug 28, 2007 4:20 pm
Re: Pikku pelit
Maailma on pelastettu!
Löysin sen mun Kivi, Paperi & Sakset - pelin Googletuksella. Nauttikaa.
Luulin, että se olisi iäksi tuhoutunut, mutta näemmä se oli jäänyt jonnekkin netin perukoille pyörimään.
Löysin sen mun Kivi, Paperi & Sakset - pelin Googletuksella. Nauttikaa.
Luulin, että se olisi iäksi tuhoutunut, mutta näemmä se oli jäänyt jonnekkin netin perukoille pyörimään.
Re: Pikku pelit
Etkö tallenna pelejäsi koneellesi, Grandi?
-
- Forum Veteran
- Posts: 2396
- Joined: Tue Aug 28, 2007 4:20 pm
Re: Pikku pelit
Tallennan, mutta en itseasiassa tiedä, mihin tuo oli kadonnut. Onneksi uppaan melkein kaikki tekeleeni nettiin, joten sieltä ne varmasti löytyvät. Varmuuskopioitahan ei tosi-nörtti ota ;D Tai no, onhan tuo nettiin uppiminenkin sellaista, jos tarkkoja ollaan.phons wrote:Etkö tallenna pelejäsi koneellesi, Grandi? :?: