Oryginalna strona colobot.cba.pl umarła, gdy cba.pl przestało oferować darmowy hosting. To jest statyczny mirror, pobrany w 2018. ~krzys_h
 
Polski Portal COLOBOTa
COLOBOT Polish Portal

Programy dla obcych - Bombowiec

rzuler - 26-05-2008, 20:20
Temat postu: Bombowiec
Ok, to w zasadzie chcialem sie pierw przywitac ;]
odrazu mowie, ze ani w Colobocie, ani w programowaniu za dobry nie jestem :p tym bardziej, ze colobota to chyba 2 lata temu ostatnio uruchamilem. No ale tak mnie naszlo ;] Pomyslalem, ze ciekawy bylby program do obslugi bombowca do celow ruchomych. Narazie sie pochwale wersja 0.00000000000000001
Testowalem ja tylko celujac w dzialka na kolach jadace prosto z pelna predkoscia, ale po nierownej powierzchni ksiezyca. Wiem, ze jest tu sporo niepotrzebnego kodu, ale o to bede sie martwil pozniej, narazie mysle, zeby dzialal.
Acha, i jeszcze jedno, program jest dla osy, bo nic innego za bombowiec nam raczej nie posluzy.


Kod:
extern void object::Bombowiec_v01()
{

object cel, cel2, lol;
bool err;
point kordy1, kordy2, kordy3, kordy4, kordytest1, kordytest2, lol2;




errmode(0);
cel = radar(WheeledShooter,0,360,0,10000);

if (cel == null)
{
cel = radar(Me);
goto(space(cel.position,5,10),5);
message("Wracam do pokeballa");
return;
}

jet(-1);
do
{
wait(0.2);
}
while (altitude > 0);


produce(position, orientation, OrgaMatter, "");
grab();

cel = radar(WheeledShooter,0,360,0,1000);
turn(direction(cel.position));
jet(1);
motor(1,1);

while(true)
{
cel = radar(WheeledShooter,0,360,0,1000);
if(altitude < 5)
{
jet(1);
}
else
{
jet(0);
}

if(direction(cel.position) < 5 )
{
motor(1,0.7);

}
else
{
if(direction(cel.position) > -5 )
{
motor(0.7,1);
}
else
{
motor(1,1);
}

}

if (distance2d(position, cel.position) <6)
{
motor(1,1);
cel = radar(WheeledShooter,0,360,0,40);
kordy1 = cel.position;
wait(0.4);
cel2 = radar(WheeledShooter,0,360,0,40);




kordy2= cel2.position;
kordy3.x = kordy1.x - kordy2.x;

kordy3.y = kordy1.y - kordy2.y;


kordy4.x = kordy2.x - 4.175*kordy3.x ;
kordy4.y = kordy2.y - 4.175*kordy3.y ;
kordy4.z = position.z;
goto(kordy4,position.z,1);
cel = radar(WheeledShooter,0,360,0,40);
kordytest1 = cel.position;
kordytest2.x = kordytest1.x - position.x;
kordytest2.y = kordytest1.y - position.y;
drop();
message ("bylo: x="+kordy3.x+" y="+kordy3.y+"Roznica: x="+kordytest2.x+" y="+kordytest2.y );



goto(space(position,20,25),5,0);

jet(-1);
do
{
wait(0.2);
}
while (altitude > 0);
cel = radar(WheeledShooter,0,360,0,10000);
if (cel == null)
{
cel = radar(Me);
goto(space(cel.position,5,10),5);
message("Wracam do pokeballa");
return;
}
produce(position, orientation, OrgaMatter, "");
grab();
}


}

}




mrowek - 03-07-2008, 14:21
Temat postu: RE: Bombowiec
ja mam zamiar wypróbować to na działku
Andreas - 03-07-2008, 19:42
Temat postu: RE: Bombowiec
Chyba się nie uda, bo tylko osy mog± puszczać co¶ z powitrza. ;)


/// "zjedzona" litera - Abadon

mrowek - 04-07-2008, 07:51
Temat postu: RE: Bombowiec
zauważyłem to bo się nie udało
lukas_j - 04-07-2008, 17:12
Temat postu: RE: Bombowiec
widzisz, ale działko ci nic nie podniesie :P Osa tylko moze byc
mrowek - 19-07-2008, 15:52
Temat postu: RE: Bombowiec
ale chodziło mi o to aby działko strzelało

Powered by phpBB modified by Przemo & WRIM © 2003 phpBB Group