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
Forum - Polski Portal COLOBOTa
Strona głównaStrona główna UżytkownicyUżytkownicy GrupyGrupy StatystykiStatystyki


Poprzedni temat «» Następny temat
Ulepszony program do robienia Ogniw Atomowych
Autor Wiadomość
Sioner 
Ubuntu user


Dołączył: 23 Mar 2009
Posty: 152
Wysłany: 26-03-2009, 15:39   Ulepszony program do robienia Ogniw Atomowych

Tym razem program się już powtarza i nosi wyprodukowane rzeczy do wolnej pozycji
Kod:

extern void object::ZrobOgniwoN()
{
object item;
while(true);
item = radar(UraniumOre);
goto (item.position);
grab();
item = radar(NuclearPlant);
goto (item.position);
drop();
move(-3);
wait(40);
move(3);
grab();
goto(space(position));
drop();
message("Wytworzono Ogniwo Atomowe");
}
 
 
     
colobotwymiiata 
Zjem cię


Twoja ulubiona misja: Swobodna na Krystalii
Pomógł: 6 razy
Wiek: 20
Dołączył: 02 Lut 2009
Posty: 329
Skąd: Oleśnica
Wysłany: 26-03-2009, 16:13   

Mógłbyś zedytować poprzedni temat, a nie tworzyć nowy.

PS.: I to jeszcze z niedziałającym programem. Przez linijkę "while(true);" załatwiłeś sobie wieczne robienie niczego. Żeby działało:
Kod:
while(true)
{
//Tu wpisz instrukcje
}
 
 
     
Sioner 
Ubuntu user


Dołączył: 23 Mar 2009
Posty: 152
Wysłany: 26-03-2009, 16:53   lol

lol u mnie dziala wienc nie klam
 
 
     
Berserker 
Dark Ness


Twoja ulubiona misja: Ofrenia
Pomógł: 16 razy
Wiek: 24
Dołączył: 24 Mar 2009
Posty: 496
Skąd: Bigos
Wysłany: 26-03-2009, 17:03   

Kod:
while(true);

jest rownoznaczne z
Kod:
while(true)
{

}

Czyli robi nic dopoki to nic nie wywali errora.
_________________
 
 
     
Sioner 
Ubuntu user


Dołączył: 23 Mar 2009
Posty: 152
Wysłany: 26-03-2009, 17:16   a jednak

jednak nie dziala

[ Dodano: 26-03-2009, 17:21 ]
teraz juz dziala bo poprawilem

Kod:
extern void object::ZrobOgniwoN()
{
object item;
while(true)
{

item = radar(UraniumOre);
 goto (item.position);
 grab();
item = radar(NuclearPlant);
goto (item.position);
drop();
move(-3);
wait(40);
move(3);
grab();
goto(space(position));
drop();
message("Wytworzono Ogniwo Atomowe");
}
}
 
 
     
Iroks1


Dołączył: 18 Mar 2009
Posty: 7
Wysłany: 26-03-2009, 18:00   

biedny trochę ten programik sam się nie naprawia/ładuje dając lataczowi silniki będą ciągle się przegrzewać
 
     
Sioner 
Ubuntu user


Dołączył: 23 Mar 2009
Posty: 152
Wysłany: 27-03-2009, 10:34   no

Masz racje muszę go ulepszyć zaraz się biorę do pracy !!!

[ Dodano: 27-03-2009, 10:46 ]
4 edycja mojego programu!!! Teraz juz nic mu nie brakuje!!! Tylko gdy się użyje na ogniwie atomowym to nie nie załaduje tylko poczeka chwile w stacji ładowawczej i poleci dalej.

Kod:
extern void object::ZrobOgniwoN()
{
    object item;
    while(true)
    {
       
        item = radar(UraniumOre);
        goto (item.position);
        grab();
        item = radar(NuclearPlant);
        goto (item.position);
        drop();
        move(-3);
        wait(40);
        move(3);
        grab();
        goto(space(position));
        drop();
        message("Wytworzono Ogniwo Atomowe");
        item = radar(PowerStation);
        goto (item.position);
        wait(10);
        item = radar(RepairCenter);
        goto (item.position);
        wait(10);
    }
}
 
 
     
adiblol 
Administrator forum
FLOSS FTW!


Twoja ulubiona misja: porównywanie formatów audio
Pomógł: 18 razy
Dołączył: 21 Kwi 2008
Posty: 1313
Skąd: pokój odsłuchowy
Wysłany: 27-03-2009, 12:29   

dodaj warunki do ładowania osłony i ogniwa bo tak jest bez sensu.
_________________
1Tbps Project && Telecomix Network

 
 
     
Sioner 
Ubuntu user


Dołączył: 23 Mar 2009
Posty: 152
Wysłany: 27-03-2009, 12:42   pewnosc

Ale ma się pewność że robot wróci cały
 
 
     
Iroks1


Dołączył: 18 Mar 2009
Posty: 7
Wysłany: 27-03-2009, 21:33   

do naprawiania i ładowania dorzuć przed przemieszczeniem się do rudy to zawsze wróci cały chyba że robaki go po drodze zabiją

Cytat:
if (energyCell.energyLevel < 0.4)
{
message("Lece naladowac baterie");
ene = radar(PowerStation);
goto(ene.position);
while(energyLevel == 1 )
{
wait(1);
}
}
if(shieldLevel<1)
{
message("Lece naprawic sie jestem zbyt uszkodzony");
napraw=radar(RepairCenter);
goto(napraw.position);
while(shieldLevel ==1)
{
wait(1);
}


to ja się zapytam jeszcze czy da się wykryć czy miejsce pod lataczem jest gruntem czy wodą ? bo jak się przegrzewa silnik to musi wylądować ale jak jest woda to kiszka :/
 
     
Abadon 
Administrator forum
Administrator


Pomógł: 3 razy
Dołączył: 11 Sie 2008
Posty: 586
Wysłany: 27-03-2009, 21:40   

Cytat:
to ja się zapytam jeszcze czy da się wykryć czy miejsce pod lataczem jest gruntem czy wodą ?


Tak mi się zdaje że gdzieś czytałem na angielskim forum colobota, ale dokładnie nie wiem. Myślę że będzie to trudne, ale jak da się stwierdzić czy grunt jest płaski czy nie to i to pewnie da się zrobić.
_________________

 
     
colobotwymiiata 
Zjem cię


Twoja ulubiona misja: Swobodna na Krystalii
Pomógł: 6 razy
Wiek: 20
Dołączył: 02 Lut 2009
Posty: 329
Skąd: Oleśnica
Wysłany: 27-03-2009, 21:43   

Da się, to nawet bardzo proste. Poczytaj sobie o komendzie "topo()" w SatCom'ie.
 
 
     
Abadon 
Administrator forum
Administrator


Pomógł: 3 razy
Dołączył: 11 Sie 2008
Posty: 586
Wysłany: 27-03-2009, 21:56   

Ale jestem gapa, oczywiście że to w Satcom'ie jest to. O mały włos bym Iroksa1 wprowadził w szukaninę na forum. Przepraszam, moja pomyłka.
_________________

 
     
colobotwymiiata 
Zjem cię


Twoja ulubiona misja: Swobodna na Krystalii
Pomógł: 6 razy
Wiek: 20
Dołączył: 02 Lut 2009
Posty: 329
Skąd: Oleśnica
Wysłany: 27-03-2009, 21:58   

O ile nie jest za późno :-D
 
 
     
Iroks1


Dołączył: 18 Mar 2009
Posty: 7
Wysłany: 28-03-2009, 22:19   

spoko dopiero to czytam :D
tylko właśnie co jak będzie leciał wzdłuż rzeki ? :D to by trzeba mieszaninę wolnego miejsca wykorzystać
 
     
Wyświetl posty z ostatnich:   

Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group
Polski Portal COLOBOTa © 2008 - 2012