Mieszany atak

Wszystko o modach, patchach i błędach w OW oraz ogólnym programowaniu.
Awatar użytkownika
Pablo Abruzzi
Soldier level 5
Soldier level 5
Posty: 269
Rejestracja: pn lip 28, 2008 3:09 pm
Lokalizacja: Polska
Kontakt:

Mieszany atak

Post autor: Pablo Abruzzi »

Chciałem zrobić mieszany atak przymierza(amerykanie i rosjanie), więc napisałem kod:

Kod: Zaznacz cały

export ru1,ru2,ru3,ru4,ru5,g1,g2,g3,g4,g5;

every 0$2 do
begin
uc_side=7;
uc_nation=nation_russian;
hc_skills=[3,2,10,4];
hc_class=3;
ru1=CreateHuman;
ru2=CreateHuman;
hc_skills=[2,5,10,6];
ru3=CreateHuman;
hc_skills=[2,3,8,4];
ru4=CreateHuman;
ru5=CreateHuman;
vc_chassis=ru_medium_wheeled;
vc_engine=engine_siberite;
vc_control=control_manual;
vc_weapon=ru_gatling_gun;
g1=CreateVehicle;
g2=CreateVehicle;
vc_chassis=ru_heavy_tracked;
vc_engine=engine_siberite;
vc_control=control_manual;
vc_weapon=ru_Rocket;
g3=CreateVehicle;
g4=CreateVehicle;
g5=CreateVehicle;
PlaceHumanInUnit(ru1,g1);
PlaceHumanInUnit(ru2,g2);
PlaceHumanInUnit(ru3,g3);
PlaceHumanInUnit(ru4,g4);
PlaceHumanInUnit(ru5,g5);
PlaceUnitArea(g1,unkown,false);
PlaceUnitArea(g2,Area63,false);
PlaceUnitArea(g3,unkown,false);
PlaceUnitArea(g4,Area63,false);
PlaceUnitArea(g5,unkown,false);
AddComMoveToArea([g1,g3,g5],teren_bazy);
AddComMoveToArea([g2,g4],teren_bazy2);
AddComAttackUnit([g2,g4],FilterAllUnits([f_side,2]));
end;

export am1,am2,am3,am4,am5,am6,am7,h1,h2,h3,h4,h5,h6,h7;

every 0$1 do
begin
uc_side=7;
uc_nation=nation_american;
hc_skills=[3,5,10,4];
hc_class=3;
am1=CreateHuman;
am2=CreateHuman;
hc_skills=[2,6,9,4];
am3=CreateHuman;
hc_skills=[2,3,8,4];
am4=CreateHuman;
am5=CreateHuman;
hc_skills=[4,6,10,5];
am6=CreateHuman;
hc_skills=[1,2,6,0];
am7=CreateHuman;
vc_chassis=us_medium_tracked;
vc_engine=engine_siberite;
vc_control=control_manual;
vc_weapon=us_rocket_launcher;
h1=CreateVehicle;
h2=CreateVehicle;
vc_chassis=us_medium_tracked;
vc_engine=engine_siberite;
vc_control=control_manual;
vc_weapon=us_laser;
h3=CreateVehicle;
h4=CreateVehicle;
vc_chassis=us_morphling;
vc_engine=engine_siberite;
vc_control=control_manual;
vc_weapon=us_heavy_gun;
h5=CreateVehicle;
h6=CreateVehicle;
h7=CreateVehicle;
PlaceHumanInUnit(am1,hg1);
PlaceHumanInUnit(am2,hg2);
PlaceHumanInUnit(am3,hg3);
PlaceHumanInUnit(am4,hg4);
PlaceHumanInUnit(am5,hg5);
PlaceHumanInUnit(am6,hg6);
PlaceHumanInUnit(am7,hg7);
PlaceUnitArea(h1,unkown,false);
PlaceUnitArea(h2,Area63,false);
PlaceUnitArea(h3,unkown,false);
PlaceUnitArea(h4,Area63,false);
PlaceUnitArea(h5,unkown,false);
PlaceUnitArea(h6,Area63,false);
PlaceUnitArea(h7,unkown,false);
AddComMoveToArea([h1,h3,h5,h7],teren_bazy);
AddComMoveToArea([h2,h4,h6],teren_bazy2);
AddComAttackUnit([h2,h3,h6],FilterAllUnits([f_side,2]));
end;
i po tym czasie pojawili się rosjanie i atakowali (tak jak chciałem), ale zamiast amerykanów w pojazdach pojawiły się amerykańskie czołgi (puste).I nie wiem, dlaczego przecież napisałem kod PlaceHumanInUnit u rosjan działał u amerykanów nie. Proszę o pomoc.
Si vis pacem, para bellum jeśli chcesz pokoju, gotuj się do wojny.

THE HEROES COMPANY MOD
[progress]100%[/progress]
DONE
http://forum.original-war.net/viewtopic ... 6&start=90
Radzio
Site Administrator
Site Administrator
Poland
Posty: 2898
Rejestracja: pt lip 28, 2006 10:58 am
Lokalizacja: Bialystok, Poland

Post autor: Radzio »

Hm, wydaje mi się, że kompilator nie powinien wogóle tego skompilować. Umieściłeś amerykanów w hgX zamiast w hX.
BTW, jak chcesz zmienić jeden parametr czołgu to nie musisz powtarzać wszystkich jego ustawień.
Awatar użytkownika
Pablo Abruzzi
Soldier level 5
Soldier level 5
Posty: 269
Rejestracja: pn lip 28, 2008 3:09 pm
Lokalizacja: Polska
Kontakt:

Post autor: Pablo Abruzzi »

U mnie skompilował nawet więcej działało (w połowie). Ja za każdym czasem z tego korzystam i jeszcze nigdy mnie nie zawiodło. Co muszę zmienić, aby pojawiły się oddziały amerykańskie tak jak rosyjskie.
Si vis pacem, para bellum jeśli chcesz pokoju, gotuj się do wojny.

THE HEROES COMPANY MOD
[progress]100%[/progress]
DONE
http://forum.original-war.net/viewtopic ... 6&start=90
Radzio
Site Administrator
Site Administrator
Poland
Posty: 2898
Rejestracja: pt lip 28, 2006 10:58 am
Lokalizacja: Bialystok, Poland

Post autor: Radzio »

No wiesz, jak ja widzę, że nazywałeś pojazdy hX (h1, h2, ...), a ludzi powsadzałeś do hgX(hg1, hg2, ...) to chyba trzeba usunąć te "g".
BTW, ComAttackUnit nie obsługuje list w drugim argumencie.
Awatar użytkownika
Pablo Abruzzi
Soldier level 5
Soldier level 5
Posty: 269
Rejestracja: pn lip 28, 2008 3:09 pm
Lokalizacja: Polska
Kontakt:

Post autor: Pablo Abruzzi »

O jezu nie zauważyłem tego... Dzięki za pomoc, a co do tej drugiej listy to tak chciałem( aby nie było AddComAttackUnit). Bo ta druga grupa miała atakować drugą część bazy a wszyscy jechali na jedną :D i stąd nie zrobiłem tego kodu dla drugiej grupy.
Ps.Sorki za problem z postem nie zauważyłem tego, ale ze mnie... gapa delikatnie mówiąc.
Si vis pacem, para bellum jeśli chcesz pokoju, gotuj się do wojny.

THE HEROES COMPANY MOD
[progress]100%[/progress]
DONE
http://forum.original-war.net/viewtopic ... 6&start=90
Zablokowany