|
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 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
|
|