Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //**************************************************************************************************
- // #Version 2.0# ****
- // ****
- // Includes: all Sirens ****
- // ****
- // 1.0| VCmdSiren ****
- // 1.1| DUMMYUpdatePos ****
- // 1.2| DUMMYDisableSiren ****
- // 1.3| DUMMYFindPath ****
- // 1.4| DUMMYHasSiren ****
- // ****
- // childID 1 for disabling bluelights. ****
- // ****
- // ****
- //**************************************************************************************************
- // Hier kann man den Namen eines Icons f die Commandleiste angeben.
- // Wird automatisch aus den Ordnern UI/Game/Icons/Command/ und UI/Game/Icons/Cursor genommen.
- const char IMG[] = "sosi";
- const char EACTION_FINDPATH[] = "EActionFindPath";
- const char DUMMY_HASSIREN[] = "DUMMYHasSiren";
- const char DUMMY_UPDATEPOS[] = "DUMMYUpdatePos";
- const char DUMMY_FINDPATH[] = "DUMMYFindPath";
- const char CMD_MOVETO[] = "MoveTo";
- const char NAME_DUMMYOBJECT[] = "HelpingObjekt_Roger";
- // Hier die Pfade von Ihren Fahrzeugen angeben!
- const char PROTO_RW[] = "mod:Prototypes/Vehicles/Fire Department/rw.e4p";
- const char PROTO_RW2[] = "mod:Prototypes/Vehicles/Straz/381[M]71.e4p";
- const char PROTO_RW3[] = "mod:Prototypes/Vehicles/Straz/382[M]25.e4p";
- const char PROTO_RW4[] = "mod:Prototypes/Vehicles/Straz/truck.e4p";
- const char PROTO_RW5[] = "mod:Prototypes/Vehicles/Straz/389[M]38.e4p";
- const char PROTO_RW6[] = "mod:Prototypes/Vehicles/Straz/491[R]53.e4p";
- const char PROTO_RW7[] = "mod:Prototypes/Vehicles/Straz/387[M]56.e4p";
- const char PROTO_RW8[] = "mod:Prototypes/Vehicles/Straz/381[M]51.e4p";
- const char PROTO_RW9[] = "mod:Prototypes/Vehicles/Straz/381[M]21.e4p";
- const char PROTO_RW10[] = "mod:Prototypes/Vehicles/Straz/380[M]82.e4p";
- const char PROTO_RW11[] = "mod:Prototypes/Vehicles/Straz/382M91.e4p";
- const char PROTO_RW12[] = "mod:Prototypes/Vehicles/Straz/tru111ck.e4p";
- const char PROTO_RW13[] = "mod:Prototypes/Vehicles/Straz/SCRt.e4p";
- const char PROTO_RW14[] = "mod:Prototypes/Vehicles/Straz/381[M]25.e4p";
- const char PROTO_RW15[] = "mod:Prototypes/Vehicles/Straz/381[M]22.e4p";
- const char PROTO_RW16[] = "mod:Prototypes/Vehicles/Straz/381[M]25 new.e4p";
- const char PROTO_RW17[] = "mod:Prototypes/Vehicles/Straz/389[M]98.e4p";
- const char PROTO_RW18[] = "mod:Prototypes/Vehicles/Straz/381[M]39.e4p";
- const char PROTO_RW19[] = "mod:Prototypes/Vehicles/Straz/381[M]39beczka.e4p";
- const char PROTO_NEF[] = "mod:Prototypes/Vehicles/Ambulance/nef.e4p";
- const char PROTO_RTW[] = "mod:Prototypes/Vehicles/Ambulance/rtw.e4p";
- const char PROTO_ITW[] = "mod:Prototypes/Vehicles/Ambulance/itw.e4p";
- const char PROTO_RHF[] = "mod:Prototypes/Vehicles/Ambulance/rhf.e4p";
- const char PROTO_STW[] = "mod:Prototypes/Vehicles/Police/BMW330ixDrive.e4p";
- const char PROTO_FGRI[] = "mod:Prototypes/Vehicles/Tec/fgri.e4p";;
- const char PROTO_FGRB[] = "mod:Prototypes/Vehicles/Tec/fgrb.e4p";
- const char PROTO_FGR_RB[] = "mod:Prototypes/Vehicles/Tec/fgr_rb.e4p";
- const char PROTO_FGR[] = "mod:Prototypes/Vehicles/Tec/fgr.e4p";
- const char PROTO_ASF[] = "mod:Prototypes/Vehicles/Tec/asf.e4p";
- const char PROTO_ASF2[] = "mod:Prototypes/Vehicles/Tec/asf2.e4p";;
- int DummyGroup = 20;
- // 01.0
- object VCmdSiren : CommandScript
- {
- VCmdSiren()
- {
- SetIcon(IMG);
- SetCursor(IMG);
- SetRestrictions(RESTRICT_SELFEXECUTE);
- }
- bool CheckPossible(GameObject *Caller)
- {
- if (!Caller->IsValid())
- return false;
- if (Caller->GetType() == ACTOR_VEHICLE)
- {
- return true;
- }
- return false;
- }
- bool CheckTarget(GameObject *Caller, Actor *Target, int childID)
- {
- if (!Target->IsValid() || Target->GetID() != Caller->GetID())
- return false;
- if (!Caller->HasCommand(CMD_MOVETO) || Caller->GetType() != ACTOR_VEHICLE)
- return false;
- return true;
- }
- void PushActions(GameObject *Caller, Actor *Target, int childID)
- {
- Vehicle v(Caller);
- if (!v.HasCommand(DUMMY_HASSIREN) && (childID != 2 && childID != 1))
- {
- int soundID;
- v.EnableBlueLights(true);
- Vector CarPos = v.GetPosition();
- // Hier die const char Namen von oben eintragen wie in den beiden Beispielen unten.
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RW) == 0)
- {
- // Hier muss ein valider Link zu einem Sirensound stehen, in 'mono' codiert!
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren01.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RW2) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/真k.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RW3) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/真k.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RW4) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/1120_mix.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren01.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF2) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Jelcz GPr.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF3) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/straz_pozarna_leon.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF4) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/milicja.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF5) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/TWGS-201.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF6) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Star25.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF7) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/straz_pozarna_leon.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF8) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/kerax_wail.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF9) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/new_zura_elfir_mix.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF10) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/new_zura_elfir_mix.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF11) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/jelcz422.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF12) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/zura_elfir_mix.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF13) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/zura_yelp.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF14) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/straz_pozarna_leon.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF15) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/new_zura_elfir_mix.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF16) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/kerax_yelp.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF17) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/zura1120.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTF18) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/jelcz422.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_DLK) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren01.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_DLK2) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Star25.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_TLF) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren01.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_TLF2) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Jelcz004.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_TLF3) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/zura1120.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_TLF4) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/straz_pozarna_leon.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_TLF5) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/straz_pozarna_leon.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_LPF) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren01.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_LPF2) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/straz_pozarna_leon.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_DEKON) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren01.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_DEKON2) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/steyr_srw.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_DEKON3) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/straz_pozarna_leon.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_TFMB) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren01.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_TFMB2) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/new_zura_elfir_mix.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_FLB) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/EMsiren05.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_NEF) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren04.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RTW) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren04.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RTW2) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/milicja.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RTW3) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/tesla.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RTW4) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/tesla.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RTW5) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/真k.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RTW6) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/straz_pozarna_leon.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RTW7) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/真k.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RTW8) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/federal_yelp.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RTW9) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/federal_ambu_mix.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RTW10) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/atego_gba.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RTW11) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/federal_leon.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RTW12) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/federal_leon.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_ITW) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren04.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_RHF) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren04.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_STW) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren02.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_STW2) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/milicja.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_STW3) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/真k.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_STW4) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/milicja.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_STW5) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/真k.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_STW6) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/真k.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_STW7) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/milicja.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_STW8) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/fedsig_yelp.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_STW9) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/zura2120mix.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_STW10) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/nieoznakowany.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_STW11) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/zura_yelp.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_MTW) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren02.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_MTW2) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/zura_yelp.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_MTW3) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/zura_leon.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_MTW4) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/zura_leon.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_MTW5) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/fedsig_wama_yelp.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_MTW6) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/fedsig_yelp.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_MTW7) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/fedsig_yelp.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_SW) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren02.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_WAW) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren02.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_WAW2) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/TWGS-201.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTW) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren02.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_GTW2) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/milicja.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_FGRI) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren03.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_FGRB) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren03.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_FGR_RB) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren03.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_FGR) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren03.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_ASF) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren03.wav", CarPos, true);
- }
- if (StrCompare(v.GetPrototypeFileName(), PROTO_ASF2) == 0)
- {
- soundID = Audio::PlaySample3D("mod:Audio/FX/Sirens/Emsiren03.wav", CarPos, true);
- }
- GameObject mDummy = Game::CreateObject("mod:Prototypes/Objects/Misc/empty.e4p", NAME_DUMMYOBJECT);
- mDummy.Hide();
- mDummy.SetPosition(CarPos);
- mDummy.SetUserData(soundID);
- mDummy.PushActionExecuteCommand(ACTION_NEWLIST, DUMMY_UPDATEPOS, &v, soundID, false);
- v.SetUserData(soundID);
- v.AssignCommand(DUMMY_HASSIREN);
- return;
- }
- if (v.HasCommand(DUMMY_HASSIREN))
- {
- if (childID == 1)
- {
- v.EnableBlueLights(false);
- }
- if (v.HasCommand(DUMMY_HASSIREN))
- {
- int ref = Caller->GetUserData();
- Audio::StopSample(ref);
- GameObjectList list = Game::GetGameObjects(NAME_DUMMYOBJECT);
- for(int i=0; i<list.GetNumObjects(); i++)
- {
- GameObject *obj = list.GetObject(i);
- if (obj->GetUserData() == ref)
- {
- int mSirTest = i;
- }
- }
- GameObject *obj = list.GetObject(mSirTest);
- obj->PushActionDeleteOwner(ACTION_NEWLIST);
- v.RemoveCommand(DUMMY_HASSIREN);
- }
- return;
- }
- }
- };
- // 01.1
- object DUMMYUpdatePos : CommandScript
- {
- DUMMYUpdatePos()
- {
- SetGroupID(DummyGroup);
- }
- bool CheckTarget(GameObject *Caller, Actor *Target, int childID)
- {
- }
- void PushActions(GameObject *Caller, Actor *Target, int childID)
- {
- Vehicle v(Target);
- GameObject mDummy(Caller);
- Vector CarPos = v.GetPosition();
- if (v.IsDestroyed() || !v.IsValid())
- {
- int ref = mDummy.GetUserData();
- Audio::StopSample(ref);
- mDummy.PushActionDeleteOwner(ACTION_NEWLIST);
- } else
- {
- mDummy.SetPosition(CarPos);
- Audio::UpdatePos(childID, CarPos, true);
- if (v.IsCurrentAction(EACTION_FINDPATH))
- {
- if (!v.HasCommand(DUMMY_FINDPATH))
- {
- v.AssignCommand(DUMMY_FINDPATH);
- }
- }
- mDummy.PushActionExecuteCommand(ACTION_NEWLIST, DUMMY_UPDATEPOS, Target, childID, false);
- }
- if (v.HasCommand(DUMMY_FINDPATH))
- {
- if (!v.IsCurrentAction(EACTION_FINDPATH) && v.GetNumActions() == 0)
- {
- v.RemoveCommand(DUMMY_HASSIREN);
- v.RemoveCommand(DUMMY_FINDPATH);
- int ref = Caller->GetUserData();
- Audio::StopSample(ref);
- GameObjectList list = Game::GetGameObjects(NAME_DUMMYOBJECT);
- for(int i = 0; i < list.GetNumObjects(); i++)
- {
- GameObject *obj = list.GetObject(i);
- if (obj->GetUserData() == ref)
- {
- int mSirTest = i;
- GameObject *obj = list.GetObject(mSirTest);
- obj->PushActionDeleteOwner(ACTION_NEWLIST);
- v.RemoveCommand(DUMMY_HASSIREN);
- if (v.HasCommand(DUMMY_FINDPATH))
- {
- v.RemoveCommand(DUMMY_FINDPATH);
- }
- }
- }
- }
- }
- }
- };
- // 01.2
- object DUMMYDisableSiren : CommandScript
- {
- DUMMYDisableSiren()
- {
- SetGroupID(DummyGroup);
- }
- bool CheckTarget(GameObject *Caller, Actor *Target, int childID)
- {
- }
- void PushActions(GameObject *Caller, Actor *Target, int childID)
- {
- Vehicle v(Caller);
- if (childID == 1)
- {
- v.EnableBlueLights(false);
- }
- int ref = Caller->GetUserData();
- Audio::StopSample(ref);
- GameObjectList list = Game::GetGameObjects(NAME_DUMMYOBJECT);
- for(int i = 0; i < list.GetNumObjects(); i++)
- {
- GameObject *obj = list.GetObject(i);
- if (obj->GetUserData() == ref)
- {
- int mSirTest = i;
- GameObject *obj = list.GetObject(mSirTest);
- obj->PushActionDeleteOwner(ACTION_NEWLIST);
- v.RemoveCommand(DUMMY_HASSIREN);
- if (v.HasCommand(DUMMY_FINDPATH))
- {
- v.RemoveCommand(DUMMY_FINDPATH);
- }
- }
- }
- }
- };
- // 01.3
- object DUMMYFindPath : CommandScript
- {
- DUMMYFindPath()
- {
- SetGroupID(DummyGroup);
- }
- bool CheckTarget(GameObject *Caller, Actor *Target, int childID)
- {
- return false;
- }
- void PushActions(GameObject *Caller, Actor *Target, int childID)
- {
- }
- };
- // 01.4
- object DUMMYHasSiren : CommandScript
- {
- DUMMYHasSiren()
- {
- SetGroupID(DummyGroup);
- }
- bool CheckGroupVisibility(GameObject *Caller)
- {
- return false;
- }
- bool CheckPossible(GameObject *Caller)
- {
- return false;
- }
- bool CheckTarget(GameObject *Caller, Actor *Target, int childID)
- {
- return false;
- }
- void PushActions(GameObject *Caller, Actor *Target, int childID)
- {
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement