FireFightersKid Posted October 26, 2012 Report Share Posted October 26, 2012 Could somebody help me with making firestations in my map?I know I need script, but I don't no which one. Quote Link to comment Share on other sites More sharing options...
Kermit Posted October 26, 2012 Report Share Posted October 26, 2012 You need an 'alarmirings/rufe script' and a ParkAtBase script. Quote Link to comment Share on other sites More sharing options...
NathanDollinger Posted October 26, 2012 Report Share Posted October 26, 2012 You need an 'alarmirings/rufe script' and a ParkAtBase script.^ Well thats informational ....The scripts in the LA Mod are as followsLAfirestation.scriptLAfirestationstart.scriptLAtofirestation.script Quote Link to comment Share on other sites More sharing options...
Kermit Posted October 26, 2012 Report Share Posted October 26, 2012 Yes, but the scripts I mentioned are the most used. Quote Link to comment Share on other sites More sharing options...
FireFightersKid Posted October 28, 2012 Author Report Share Posted October 28, 2012 Ok, now I have stations in my map. But the problem now is, when i send them to the base, they often park backwards in the station. With the rear at the gate. But I want them with the front at the gate.How can i fix this? I work with the scripts of the Vierheim modification Quote Link to comment Share on other sites More sharing options...
Zach1019 Posted October 28, 2012 Report Share Posted October 28, 2012 Ok, now I have stations in my map. But the problem now is, when i send them to the base, they often park backwards in the station. With the rear at the gate. But I want them with the front at the gate.How can i fix this? I work with the scripts of the Vierheim modificationIt has to do with VO's (virtural objects) and the order the numbers are. I haven't had much experience with them so I can't help with fixing it but I know that it has to do with the VO's. Quote Link to comment Share on other sites More sharing options...
FireFightersKid Posted October 28, 2012 Author Report Share Posted October 28, 2012 Ok, so maybe if the number 0 and 1 on the front and the 2 and 3 at the rear? Quote Link to comment Share on other sites More sharing options...
Zach1019 Posted October 28, 2012 Report Share Posted October 28, 2012 yeah that might work I have never understood how to do VO's where the vehicle is in the position you want. Quote Link to comment Share on other sites More sharing options...
FireFightersKid Posted October 28, 2012 Author Report Share Posted October 28, 2012 Ok, thanks, I will let you know something Quote Link to comment Share on other sites More sharing options...
Zach1019 Posted October 28, 2012 Report Share Posted October 28, 2012 your welcomealright I want to know this too! Quote Link to comment Share on other sites More sharing options...
FireFightersKid Posted October 28, 2012 Author Report Share Posted October 28, 2012 I don't think this will work, because for my ladder truck it was already 0 and 1 in the front and 2 and 3 in the back. But he still parks not as it must be.This is the go to station command script.//////////////////////////////////////////////////////////////////////////////////////////////////////////// Freeplay GoHome - Script v1.3 //// ******************************************** //// //// 1.0| VCmdFPGoHome //// | //// 2.0| DUMMYFPGoHome //// | | //// | |- Zu parkende Einheiten sind durch Kommentarzeilen (//) in Bloecke unterteilt. //// | | Jeder von ihnen kann entfernt werden, ohne dass das Skript unbrauchbar wird. //// | | //// | '- Die mit einem Stern (*) markierten Zeilen muessen angepasst werden. //// | Mehrere Sterne bedeuten lediglich mehrere Anpassungen in einer Zeile. //// | Dabei gilt: Zwei Sterne entsprechen zwei Anpassungen, und so weiter. //// | //// 2.1| DUMMYFPGoHomePersonal //// | //// |- Ausgangspunkte fuer das Fahrzeug-Personal sind durch Kommentarzeilen (//) in Bloecke //// | unterteilt. Jeder von ihnen kann entfernt werden, ohne dass das Skript unbrauchbar //// | wird. //// | //// '- Die mit einem Stern (*) markierten Zeilen muessen angepasst werden. //// Mehrere Sterne bedeuten lediglich mehrere Anpassungen in einer Zeile. //// Dabei gilt: Zwei Sterne entsprechen zwei Anpassungen, und so weiter. //// //// _____________________ //// a-rescue und Magicman mŸssen in der Readme genannt werden & der Kommentar muss so bleiben. //// Sonst freie Nutzung fŸr alle. ////////////////////////////////////////////////////////////////////////////////////////////////////////////const char IMG_ICON[] = "gohome"; // Name des Iconsconst char IMG_CURSOR[] = "gohome"; // Name des Cursorsconst char DUMMYGOHOME_V[] = "DUMMYFPGoHome2";const char DUMMYGOHOME_P[] = "DUMMYFPGoHomePersonal2";const char COMMANDABLE_TRUE[] = "DUMMYSetCommandableTrue";const char COMMANDABLE_FALSE[] = "DUMMYSetCommandableFalse";const char FREEFORALERT_TRUE[] = "DUMMYFPSetFreeForAlertTrue";const char FREEFORALERT_FALSE[] = "DUMMYFPSetFreeForAlertFalse";const char FREEFORALERT[] = "DUMMYFPIsFreeForAlert";const char INBASE_TRUE[] = "DUMMYFPSetInBaseTrue";const char INBASE_FALSE[] = "DUMMYFPSetInBaseFalse";const char INBASE[] = "DUMMYFPIsInBase";int DummyGroup = "90";// 1.0object VCmdFPGoHome2 : CommandScript{VCmdFPGoHome2(){SetIcon(IMG_ICON);SetCursor(IMG_CURSOR);SetValidTargets(ACTOR_VEHICLE);SetRestrictions(RESTRICT_SELFEXECUTE);SetPossibleCallers(ACTOR_VEHICLE);SetGroupID(DummyGroup);}bool CheckGroupVisibility(GameObject *Caller){/*Vehicle v(Caller);PersonList pl = v.GetPassengers();PersonList tl = v.GetTransports();if (pl.GetNumPersons() > 0 && tl.GetNumPersons() == 0)return true;return false;*/return true;}bool CheckPossible(GameObject *Caller){if (!Caller->IsValid() || Caller->GetType() != ACTOR_VEHICLE)return false;Vehicle v(Caller);PersonList pl = v.GetPassengers();PersonList tl = v.GetTransports();if (v.IsValid() && !v.IsDestroyed() /*&& pl.GetNumPersons() > 0*/ && tl.GetNumPersons() == 0){return true;}return false;}bool CheckTarget(GameObject *Caller, Actor *Target, int ChildID){if (!Caller->IsValid() || !Target->IsValid() || Caller->GetID() != Target->GetID())return false;Vehicle v(Caller);PersonList pl = v.GetPassengers();PersonList tl = v.GetTransports();if (v.IsValid() && !v.IsDestroyed() /*&& pl.GetNumPersons() > 0*/ && tl.GetNumPersons() == 0){return true;}return false;}void PushActions(GameObject *Caller, Actor *Target, int childID){Vehicle v(Caller);if (v.IsBlueLightEnabled()){v.EnableBlueLights(false);}if (v.HasCommand("DUMMYHasSiren")){Game::ExecuteCommand("DUMMYDisableSiren", &v, &v);}if (v.HasCommand("DUMMYHasAutoSiren")){Game::ExecuteCommand("VCmdAutoSirenOff", &v, &v);}v.PushActionWait(ACTION_NEWLIST, 0.1);v.PushActionExecuteCommand(ACTION_APPEND, DUMMYGOHOME_V , &v, 1, true);}};// 2.0object DUMMYFPGoHome2 : CommandScript{DUMMYFPGoHome2(){SetGroupID(DummyGroup);}bool CheckPossible(GameObject *Caller){return true;}bool CheckTarget(GameObject *Caller, Actor *Target, int ChildID){return true;}void PushActions(GameObject *Caller, Actor *Target, int childID){Vehicle v(Caller);ActorList al;Actor parkplatz;Vector parkpos;Vector anfahrpos;Vector wendepos;PersonList pl;/////// gwtv /////////////////////////////////////////////////////////////////////////////////////////////////////////////if (v.HasName("snip")) // Fahrzeugname{al=Game::GetActors("snip_p"); // Name des virtuellen Objektes wo das Fahrzeug parken sollanfahrpos = Vector (0,-300,0); // siehe parken.txtwendepos = Vector (0,-600,0); // siehe parken.txt}else/////// kdowv /////////////////////////////////////////////////////////////////////////////////////////////////////////////if (v.HasName("amb1")) // Fahrzeugname{al=Game::GetActors("amb1_p"); // Name des virtuellen Objektes wo das Fahrzeug parken sollanfahrpos = Vector (0,-300,0); // siehe parken.txtwendepos = Vector (0,-600,0); // siehe parken.txt}else/////// lfv /////////////////////////////////////////////////////////////////////////////////////////////////////////////if (v.HasName("a1")) // Fahrzeugname{al=Game::GetActors("a1_p"); // Name des virtuellen Objektes wo das Fahrzeug parken sollanfahrpos = Vector (0,-300,0); // siehe parken.txtwendepos = Vector (0,-600,0); // siehe parken.txt}else/////// dlkv /////////////////////////////////////////////////////////////////////////////////////////////////////////////if (v.HasName("l1")) // Fahrzeugname{al=Game::GetActors("l1_p"); // Name des virtuellen Objektes wo das Fahrzeug parken sollanfahrpos = Vector (0,-300,0); // siehe parken.txtwendepos = Vector (0,-600,0); // siehe parken.txt}else///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Weitere Fahrzeugblšcke hier einfŸgen{Mission::PlayHint("Fuer dieses Fahrzeug konnte kein Parkplatz gefunden werden! Code 1");return;}if(al.GetNumActors() > 0){parkplatz = *al.GetActor(0);parkpos = parkplatz.GetPosition();}else{Mission::PlayHint("Fuer dieses Fahrzeug konnte kein Parkplatz gefunden werden! Code 2");return;}bool vready = true;if (v.GetNumPassengers() == 0){vready = false;}pl = v.GetPassengers();for(int i=0; i < pl.GetNumPersons(); i++){if (pl.GetPerson(i)->GetLife() < pl.GetPerson(i)->GetMaxLife()){vready = false;}}if (vready){Game::ExecuteCommand(FREEFORALERT_TRUE, &v, &v);}Game::FindFreePosition(&v, parkpos);v.PushActionmove(ACTION_NEWLIST, parkpos+anfahrpos);v.PushActionTurnTo(ACTION_APPEND, parkpos+wendepos);v.PushActionmove(ACTION_APPEND, parkpos);v.PushActionExecuteCommand(ACTION_APPEND, INBASE_TRUE, &v, 1, true);v.PushActionExecuteCommand(ACTION_APPEND, COMMANDABLE_FALSE, &v, 1, true);v.PushActionExecuteCommand(ACTION_APPEND, DUMMYGOHOME_P, &v, 1, true);v.PushActionExecuteCommand(ACTION_APPEND, "CloseGate", Caller, 1, true);}};// 2.1object DUMMYFPGoHomePersonal2 : CommandScript{DUMMYFPGoHomePersonal2(){SetGroupID(DummyGroup);}bool CheckPossible(GameObject *Caller){return true;}bool CheckTarget(GameObject *Caller, Actor *Target, int ChildID){return true;}void PushActions(GameObject *Caller, Actor *Target, int childID){Vehicle v(Caller);PersonList pl = v.GetPassengers();for(int i=0; i < pl.GetNumPersons(); i++){Person p = pl.GetPerson(i);v.RemovePassenger(&p);p.PushActionDeleteOwner(ACTION_NEWLIST);}}};What do they mean with: Game::FindFreePosition(&v, parkpos);v.PushActionmove(ACTION_NEWLIST, parkpos+anfahrpos);v.PushActionTurnTo(ACTION_APPEND, parkpos+wendepos);v.PushActionmove(ACTION_APPEND, parkpos);v.PushActionExecuteCommand(ACTION_APPEND, INBASE_TRUE, &v, 1, true);v.PushActionExecuteCommand(ACTION_APPEND, COMMANDABLE_FALSE, &v, 1, true);v.PushActionExecuteCommand(ACTION_APPEND, DUMMYGOHOME_P, &v, 1, true);v.PushActionExecuteCommand(ACTION_APPEND, "CloseGate", Caller, 1, true); Quote Link to comment Share on other sites More sharing options...
Zach1019 Posted October 28, 2012 Report Share Posted October 28, 2012 oh ok but I know forsure that is has to do with the order of the numbers, maybe someone else will know and can answer both of our questions Quote Link to comment Share on other sites More sharing options...
FireFightersKid Posted October 28, 2012 Author Report Share Posted October 28, 2012 oh ok but I know forsure that is has to do with the order of the numbers, maybe someone else will know and can answer both of our questionsOk, but thanks for your try! Quote Link to comment Share on other sites More sharing options...
Zach1019 Posted October 28, 2012 Report Share Posted October 28, 2012 yeah your welcome! Quote Link to comment Share on other sites More sharing options...
FireFightersKid Posted October 28, 2012 Author Report Share Posted October 28, 2012 I think I've found it, it's something with the coordinates. But how can I know the coordinates from my virtual object? Quote Link to comment Share on other sites More sharing options...
Zach1019 Posted October 28, 2012 Report Share Posted October 28, 2012 I'm not sure I think whatever order your numbers are Quote Link to comment Share on other sites More sharing options...