Teraz jest Pn 07 lip, 2025 19:11


skrypt pokazujący skład druzyny na mapie

Archiwum działów sekcji Armed Assault
  • Autor
  • Wiadomość
Offline
Avatar użytkownika

kondor

Major

Major

  • Posty: 880
  • Dołączył(a): Pt 11 lut, 2005 04:00
  • Lokalizacja: Berlin (wschodni)

skrypt pokazujący skład druzyny na mapie

PostŚr 17 paź, 2007 22:44

witam.
temat poruszany, ale dotychczas tylko na podstawie juz gotowych markerow, ktorym sie zmienia pozycję.
Aby pokazac na mapie za pomocą małych markerów pozycję członkow druzyny tworzę dynamicznie markery w liczbie rownej ilosci członkow i zmieniam im pozycję. Jednak po śmierci członka (nie chodzi o impotencję) i respawnie pokazywana jest pozycja trupa. Poza tym ilosc osob w druzynie moze byc zmienna, wiec co jakis czas trzeba usuwac markery i od nowa tworzyc w odpowiedniej liczbie.
Moj kod jest taki:
Kod: Zaznacz cały
_nr1 = player;

while{true}do{

   _units = Units _nr1;
   _count = Count _units;
   _marker_array = [];   
   
   for[{_i=0},{_i<_count},{_i=_i+1}]do{
      _name = format["m%1",_i];
      _mrob = createMarker [_name, [0,0]];
      _name setMarkerShape "ICON";
      _name setMarkerColor "ColorBlue";
      _name setMarkerType "Dot";
      _name setMarkerSize [0.2, 0.5];
      _marker_array = _marker_array + [_name];
   };
   
   //player
   _nameP = "mp";
   _mrob = createMarkerLocal [_nameP, [0,0]];
   _nameP setMarkerShapeLocal "ICON";
   _nameP setMarkerColorLocal "ColorGreen";
   _nameP setMarkerTypeLocal "Dot";
   _nameP setMarkerSizeLocal [0.2, 0.5];

   _rob = 0;
   while{_rob<30}do{
      sleep 3;
      _units = Units _nr1;
      _count = count _units;
      for[{_i=0},{_i<_count},{_i=_i+1}]do{
         _n = _marker_array select _i;
         _u = _units select _i;
         _n setMarkerPosLocal getPos _u;
      };
      _nameP setMarkerPosLocal getPos player;
      _rob = _rob + 1;
   };

   for[{_i=0},{_i<_count},{_i=_i+1}]do{
      _n = _marker_array select _i;
      deleteMarkerLocal _n;
   };
   deleteMarkerLocal _nameP;

};//while

if (true) exitWith {};



niestety jest po smierci wskazuje ciala oraz co pewien czas wszystkie markery znikają i pojawią się (no bo je niszcze i tworze z powrotem), a to nieladnie wygląda.
macie jakies pomysly na usprawnienie i naprawienie?
z gory dzieki
Offline
Avatar użytkownika

Kadryl

Major

Major

  • Posty: 883
  • Dołączył(a): Cz 14 wrz, 2006 14:04
  • Lokalizacja: Wa-wa

PostCz 18 paź, 2007 10:21

Jak dobrze zrozumiałem twój skrypt działa tak:
1) deklarujesz i tworzysz markery na mapie
2) przez 3 * 30 = 90 sekund aktualizujesz ich pozycję na mapie dla jednostek
3) likwidujesz wszystkie markery i idziesz do punktu nr 1.

Myślę że można to lekko usprawnić, mianowicie:
1) deklarujesz i tworzysz markery na mapie
2) tworzysz pętle aktualizacji pozycji jednostek na mapie z przerwaniem czasowym
Kod: Zaznacz cały
sleep 3
z której następuje wyjście tylko wtedy (i wyłącznie wtedy) gdy ginie jednostka.
Kod: Zaznacz cały
if (_aktualna_liczba_jedn  < _liczba_jedn) then {goto "punkt nr 3"}

3) likwidujesz wszystkie markery i idziesz do punktu nr 1.

Takie rozwiązanie pozwoli na płyną zmianę pozycji markerów bez ich likwidacji i tworzenia gdy nikt nie ginie. Likwidacja markerów i ich tworzenie będzie tylko w momenci zmiany ilości jednostek.
Offline
Avatar użytkownika

kondor

Major

Major

  • Posty: 880
  • Dołączył(a): Pt 11 lut, 2005 04:00
  • Lokalizacja: Berlin (wschodni)

PostCz 18 paź, 2007 11:04

dzieki Kardyl. warunek trzeba zmienic na !=. bo moze PRZYBYC tez jednostek (jak np jakis gracz dojdzie, a wyłączono AI).
Zrobilem poza tym uruchamianie tego skryptu tylko na serwerze skoro i tak użyłem markerów globalnych (we wczeniej napisanym skrypcie mialem blad, bo usuwalem lokalnie marker globalny :) )
teraz wyglada to tak:
Kod: Zaznacz cały
//---------------
// show group position
//---------------
_nr1 = g1;

while{true}do{

   _units = Units _nr1;
   _count = Count _units;
   _marker_array = [];   
   
   //--| tworzenie |------
   for[{_i=0},{_i<_count},{_i=_i+1}]do{
      _name = format["m%1",_i];
      _mrob = createMarker [_name, [0,0]];
      _name setMarkerShape "ICON";
      _name setMarkerColor "ColorBlue";
      _name setMarkerType "Dot";
      _name setMarkerSize [0.2, 0.5];
      _name setMarkerText (name (_units select _i));
      _marker_array = _marker_array + [_name];
   };

   //--| pokazywanie |------
   while{_count == count(Units _nr1)}do{
      
      sleep 3;      
      for[{_i=0}, {_i<_count}, {_i=_i+1}]do{
         _n = _marker_array select _i;
         _u = _units select _i;
         _n setMarkerPos getPos _u;
      };
   };

   //--| usuwanie |--------
   for[{_i=0},{_i<_count},{_i=_i+1}]do{   
      deleteMarker (_marker_array select _i);
   };

};//while

if (true) exitWith {};



tylko chciałbym zmniejszyć tekst markera, bo moglby byc mniejszy. Da sie to w ogole uczynic?

DODANE:
sprawa jest jednak jeszcze trudniejsza:
otoz warunek sprawdzenia biezacej ilosci osob w druzynie i porownanie go z wczesniejszym czasem nie zadziala jesli obrot tej petli jest nieczestszy niz 2 razy na czas odrodzenia jednostki. Poza tym tuz przed sprawdzeniem 1 osoba moze zginąc i 1 dojsc i wtedy tego nie wykryje.
poza tym okres pomiedzy usunieciem markerow i stworzeniem od poczatku nowych musi byc na tyle dlugi, aby martwa jednostka sie zdążyła odrodzic (zeby ją uwzglednic do tworzenia markera).
chyba po prostu w jakims eventHandlerze "killed", ktory dostaje kazda jednostka dam znac temu skryptowi, zeby posprzątał i czekał respawndelay od ostatniej smierci i stworzyl markery od poczatku
Ostatnio edytowano Cz 18 paź, 2007 12:54 przez kondor, łącznie edytowano 1 raz
Online

xersius

Pułkownik

Pułkownik

  • Posty: 107466
  • Dołączył(a): Pn 29 lip, 2024 15:01

Re: skrypt pokazujący skład druzyny na mapie

Online

xersius

Pułkownik

Pułkownik

  • Posty: 107466
  • Dołączył(a): Pn 29 lip, 2024 15:01

Re: skrypt pokazujący skład druzyny na mapie

PostN 08 wrz, 2024 01:29

audiobookkeeper.rucottagenet.rueyesvision.rueyesvisions.comfactoringfee.rufilmzones.rugadwall.rugaffertape.rugageboard.rugagrule.rugallduct.rugalvanometric.rugangforeman.rugangwayplatform.rugarbagechute.rugardeningleave.rugascautery.rugashbucket.rugasreturn.rugatedsweep.rugaugemodel.rugaussianfilter.rugearpitchdiameter.ru
geartreating.rugeneralizedanalysis.rugeneralprovisions.rugeophysicalprobe.rugeriatricnurse.rugetintoaflap.rugetthebounce.ruhabeascorpus.ruhabituate.ruhackedbolt.ruhackworker.ruhadronicannihilation.ruhaemagglutinin.ruhailsquall.ruhairysphere.ruhalforderfringe.ruhalfsiblings.ruhallofresidence.ruhaltstate.ruhandcoding.ruhandportedhead.ruhandradar.ruhandsfreetelephone.ru
hangonpart.ruhaphazardwinding.ruhardalloyteeth.ruhardasiron.ruhardenedconcrete.ruharmonicinteraction.ruhartlaubgoose.ruhatchholddown.ruhaveafinetime.ruhazardousatmosphere.ruheadregulator.ruheartofgold.ruheatageingresistance.ruheatinggas.ruheavydutymetalcutting.rujacketedwall.rujapanesecedar.rujibtypecrane.rujobabandonment.rujobstress.rujogformation.rujointcapsule.rujointsealingmaterial.ru
journallubricator.rujuicecatcher.rujunctionofchannels.rujusticiablehomicide.rujuxtapositiontwin.rukaposidisease.rukeepagoodoffing.rukeepsmthinhand.rukentishglory.rukerbweight.rukerrrotation.rukeymanassurance.rukeyserum.rukickplate.rukillthefattedcalf.rukilowattsecond.rukingweakfish.rukinozones.rukleinbottle.rukneejoint.ruknifesethouse.ruknockonatom.ruknowledgestate.ru
kondoferromagnet.rulabeledgraph.rulaborracket.rulabourearnings.rulabourleasing.rulaburnumtree.rulacingcourse.rulacrimalpoint.rulactogenicfactor.rulacunarycoefficient.ruladletreatediron.rulaggingload.rulaissezaller.rulambdatransition.rulaminatedmaterial.rulammasshoot.rulamphouse.rulancecorporal.rulancingdie.rulandingdoor.rulandmarksensor.rulandreform.rulanduseratio.ru
languagelaboratory.rulargeheart.rulasercalibration.rulaserlens.rulaserpulse.rulaterevent.rulatrinesergeant.rulayabout.ruleadcoating.ruleadingfirm.rulearningcurve.ruleaveword.rumachinesensible.rumagneticequator.rumagnetotelluricfield.rumailinghouse.rumajorconcern.rumammasdarling.rumanagerialstaff.rumanipulatinghand.rumanualchoke.rumedinfobooks.rump3lists.ru
nameresolution.runaphtheneseries.runarrowmouthed.runationalcensus.runaturalfunctor.runavelseed.runeatplaster.runecroticcaries.runegativefibration.runeighbouringrights.ruobjectmodule.ruobservationballoon.ruobstructivepatent.ruoceanmining.ruoctupolephonon.ruofflinesystem.ruoffsetholder.ruolibanumresinoid.ruonesticket.rupackedspheres.rupagingterminal.rupalatinebones.rupalmberry.ru
papercoating.ruparaconvexgroup.ruparasolmonoplane.ruparkingbrake.rupartfamily.rupartialmajorant.ruquadrupleworm.ruqualitybooster.ruquasimoney.ruquenchedspark.ruquodrecuperet.rurabbetledge.ruradialchaser.ruradiationestimator.rurailwaybridge.rurandomcoloration.rurapidgrowth.rurattlesnakemaster.rureachthroughregion.rureadingmagnifier.rurearchain.rurecessioncone.rurecordedassignment.ru
rectifiersubstation.ruredemptionvalue.rureducingflange.rureferenceantigen.ruregeneratedprotein.rureinvestmentplan.rusafedrilling.rusagprofile.rusalestypelease.rusamplinginterval.rusatellitehydrology.ruscarcecommodity.ruscrapermat.ruscrewingunit.ruseawaterpump.rusecondaryblock.rusecularclergy.ruseismicefficiency.ruselectivediffuser.rusemiasphalticflux.rusemifinishmachining.ruspicetrade.ruspysale.ru
stungun.rutacticaldiameter.rutailstockcenter.rutamecurve.rutapecorrection.rutappingchuck.rutaskreasoning.rutechnicalgrade.rutelangiectaticlipoma.rutelescopicdamper.rutemperateclimate.rutemperedmeasure.rutenementbuilding.rutuchkasultramaficrock.ruultraviolettesting.ru
Online

xersius

Pułkownik

Pułkownik

  • Posty: 107466
  • Dołączył(a): Pn 29 lip, 2024 15:01

Re: skrypt pokazujący skład druzyny na mapie

Online

xersius

Pułkownik

Pułkownik

  • Posty: 107466
  • Dołączył(a): Pn 29 lip, 2024 15:01

Re: skrypt pokazujący skład druzyny na mapie

PostCz 05 gru, 2024 21:33

инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинйоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоtuchkasинфоинфо
Online

xersius

Pułkownik

Pułkownik

  • Posty: 107466
  • Dołączył(a): Pn 29 lip, 2024 15:01

Re: skrypt pokazujący skład druzyny na mapie

PostŚr 05 mar, 2025 02:03

audiobookkeeper.rucottagenet.rueyesvision.rueyesvisions.comfactoringfee.rufilmzones.rugadwall.rugaffertape.rugageboard.rugagrule.rugallduct.rugalvanometric.rugangforeman.rugangwayplatform.rugarbagechute.rugardeningleave.rugascautery.rugashbucket.rugasreturn.rugatedsweep.rugaugemodel.rugaussianfilter.rugearpitchdiameter.ru
geartreating.rugeneralizedanalysis.rugeneralprovisions.rugeophysicalprobe.rugeriatricnurse.rugetintoaflap.rugetthebounce.ruhabeascorpus.ruhabituate.ruhackedbolt.ruhackworker.ruhadronicannihilation.ruhaemagglutinin.ruhailsquall.ruhairysphere.ruhalforderfringe.ruhalfsiblings.ruhallofresidence.ruhaltstate.ruhandcoding.ruhandportedhead.ruhandradar.ruhandsfreetelephone.ru
hangonpart.ruhaphazardwinding.ruhardalloyteeth.ruhardasiron.ruhardenedconcrete.ruharmonicinteraction.ruhartlaubgoose.ruhatchholddown.ruhaveafinetime.ruhazardousatmosphere.ruheadregulator.ruheartofgold.ruheatageingresistance.ruheatinggas.ruheavydutymetalcutting.rujacketedwall.rujapanesecedar.rujibtypecrane.rujobabandonment.rujobstress.rujogformation.rujointcapsule.rujointsealingmaterial.ru
journallubricator.rujuicecatcher.rujunctionofchannels.rujusticiablehomicide.rujuxtapositiontwin.rukaposidisease.rukeepagoodoffing.rukeepsmthinhand.rukentishglory.rukerbweight.rukerrrotation.rukeymanassurance.rukeyserum.rukickplate.rukillthefattedcalf.rukilowattsecond.rukingweakfish.rukinozones.rukleinbottle.rukneejoint.ruknifesethouse.ruknockonatom.ruknowledgestate.ru
kondoferromagnet.rulabeledgraph.rulaborracket.rulabourearnings.rulabourleasing.rulaburnumtree.rulacingcourse.rulacrimalpoint.rulactogenicfactor.rulacunarycoefficient.ruladletreatediron.rulaggingload.rulaissezaller.rulambdatransition.rulaminatedmaterial.rulammasshoot.rulamphouse.rulancecorporal.rulancingdie.rulandingdoor.rulandmarksensor.rulandreform.rulanduseratio.ru
languagelaboratory.rulargeheart.rulasercalibration.rulaserlens.rulaserpulse.rulaterevent.rulatrinesergeant.rulayabout.ruleadcoating.ruleadingfirm.rulearningcurve.ruleaveword.rumachinesensible.rumagneticequator.rumagnetotelluricfield.rumailinghouse.rumajorconcern.rumammasdarling.rumanagerialstaff.rumanipulatinghand.rumanualchoke.rumedinfobooks.rump3lists.ru
nameresolution.runaphtheneseries.runarrowmouthed.runationalcensus.runaturalfunctor.runavelseed.runeatplaster.runecroticcaries.runegativefibration.runeighbouringrights.ruobjectmodule.ruobservationballoon.ruobstructivepatent.ruoceanmining.ruoctupolephonon.ruofflinesystem.ruoffsetholder.ruolibanumresinoid.ruonesticket.rupackedspheres.rupagingterminal.rupalatinebones.rupalmberry.ru
papercoating.ruparaconvexgroup.ruparasolmonoplane.ruparkingbrake.rupartfamily.rupartialmajorant.ruquadrupleworm.ruqualitybooster.ruquasimoney.ruquenchedspark.ruquodrecuperet.rurabbetledge.ruradialchaser.ruradiationestimator.rurailwaybridge.rurandomcoloration.rurapidgrowth.rurattlesnakemaster.rureachthroughregion.rureadingmagnifier.rurearchain.rurecessioncone.rurecordedassignment.ru
rectifiersubstation.ruredemptionvalue.rureducingflange.rureferenceantigen.ruregeneratedprotein.rureinvestmentplan.rusafedrilling.rusagprofile.rusalestypelease.rusamplinginterval.rusatellitehydrology.ruscarcecommodity.ruscrapermat.ruscrewingunit.ruseawaterpump.rusecondaryblock.rusecularclergy.ruseismicefficiency.ruselectivediffuser.rusemiasphalticflux.rusemifinishmachining.ruspicetrade.ruspysale.ru
stungun.rutacticaldiameter.rutailstockcenter.rutamecurve.rutapecorrection.rutappingchuck.rutaskreasoning.rutechnicalgrade.rutelangiectaticlipoma.rutelescopicdamper.rutemperateclimate.rutemperedmeasure.rutenementbuilding.rutuchkasultramaficrock.ruultraviolettesting.ru
Online

xersius

Pułkownik

Pułkownik

  • Posty: 107466
  • Dołączył(a): Pn 29 lip, 2024 15:01

Re: skrypt pokazujący skład druzyny na mapie

Online

xersius

Pułkownik

Pułkownik

  • Posty: 107466
  • Dołączył(a): Pn 29 lip, 2024 15:01

Re: skrypt pokazujący skład druzyny na mapie

PostCz 05 cze, 2025 04:43

инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинйоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоtuchkasинфоинфо

Powrót do Armed Assault

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 6 gości