 |
Forum - Polski Portal COLOBOTa |
 |
 |
Pole minowe |
Autor |
Wiadomość |
Bartek c++

Twoja ulubiona misja: Tropica - Czas na atak
Pomógł: 6 razy Wiek: 20 Dołączył: 07 Lip 2009 Posty: 390
|
Wysłany: 19-06-2010, 14:18 Pole minowe
|
|
|
Program służy do robienia pola minowego.
Kod: | extern void object::Pole Minowe()
{
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
turn(90);
move(2);
turn(90);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
turn(-90);
move(2);
turn(-90);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
turn(90);
move(2);
turn(90);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
turn(-90);
move(2);
turn(-90);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
turn(90);
move(2);
turn(90);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
turn(-90);
move(2);
turn(-90);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
turn(90);
move(2);
turn(90);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
produce(position,0,Mine,"");
move(2);
turn(-90);
move(2);
turn(-90);
} |
Efekt:
 |
_________________
 |
|
|
|
 |
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: 19-06-2010, 16:40
|
|
|
Można szybciej.
Kod: |
for (float y=0;y<6;y++) {
for (float x=0;x<6;x++) {
position p;
p.x = this.position.x+x*2;
p.y = this.position.y+y*2;
produce(p, 0, Mine, "");
}
}
|
A nawet tym Twoim sposobem mógłbyś użyć pętli. |
_________________ 1Tbps Project && Telecomix Network
 |
|
|
|
 |
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: 19-06-2010, 21:32
|
|
|
@up twoj sposob ogranicza pole minowe do bokow rownoleglych do osi wspolrzednych
Kod: |
int x, y;
point dest;
dest = position;
float angle = orientation;
dest.x += 2*cos(angle);
dest.y += 2*sin(angle);
for(y = 0; y <= 5; y++)
{
for(x = 0; x <= 5; x++)
{
produce(dest, rand()*360, Mine, "");
if(x < 5)
{
dest.x += 2*cos(angle);
dest.y += 2*sin(angle);
}
}
for(int i = 0; i < 2; ,i++)
{
angle += (y%2*2-1)*90;
dest.x += 2*cos(angle);
dest.y += 2*sin(angle);
}
} |
|
|
|
|
 |
|
Nie możesz pisać nowych tematów Możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum
|
Wersja do druku
|
|
|  |
 |
 |
 |
|
Polski Portal COLOBOTa © 2008 - 2012 |
|
|