Content: Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Background: Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Pattern: Blank Waves Notes Sharp Wood Rockface Leather Honey Vertical Triangles
Welcome to International Emergency & 911: First Responders Fan Forum

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more! This message will be removed once you have signed in.

  • Announcements

    • Stan

      Maintenance update   02/07/2016

      Dear community,   After three weeks of issues we moved our site to a new dedicated root server. We fixed a lot of bugs with this release. All downloads up to 1Gb filesize should be downloadable for everyone.   Encountering any kind of issues? Make a post in the website/forum support.   Regards, Stan
    • Stan

      Paid Referral Links   02/11/2016

      Hello,     From now on we will be disallowing any referral links on our site. This is not the place to earn money directly or indirectly. Anyone found sharing paid shortened links or referral links to earn money might lose his account.     Reason for this:     We are providing this service free of charge, putting our own free time in this and paying monthly fees on our own costs to keep this free service running. So why should anyone else make money from something they don’t pay to use?     So in short from now on we will be warning and banning users abusing or misusing referal links.     Regards,     Stan          
    • randomperson139

      Signatures   03/04/2016

      Hi everyone. It appears that the update to the new forum has affected the format of the majority of signatures (adding extra spaces, changing sizes etc.). Due to this, could everyone please check their own signature, ensuring that it complies with the site rules. See the http://www.emergency-planet.com/tos.html/ or http://www.emergency-planet.com/topic/16848-acceptable-signature-sizes/ for more information.  We'll give it a few weeks to give enough time to edit signatures, after that the unnecessarily large signatures will simply be removed. Thanks for your cooperation. Regards, EMP Staff.
Xplorer4x4

LA Mod 2.1 4x4 Submod[Update August 10,2015!]

1,239 posts in this topic

1. You can call the tower ladder using the BN Chief when you first start the game, but you cannot anytime after that. - Will look into it, but I never had any problems with it.

2. The USCG Dolphin model is missing. (I had a flying box with rotors. - Looks like your right. For the time being I suggest download AUS. I believe you can extract the exe file with Winrar, and I know universal extractor will extract it. Find the v3o and dds files for the dolphin, and copy and paste them to the models->vehicles->LA Tech folder. I will try to get this fixed with an official patch tomorrow.

Suggestions:

1. You mention that the BN Chief has room for one more command. would it be possible to distinguish where a light force is coming from? That way you could chose the tower ladder and ALS engine from ST2 or the tiller and BLS engine from ST1 - Its possible, but I originally had trouble with it so I didnt include it, however, I am not convinced its really needed. Well atleast with the way I play. Any time I have a structure fire, the BC goes out, and so does the nearest light force. So if I need a another light force its going to automatically call the the other light force because I already have a light force on seen. I will keep it in mind for the future but would like to see if theres more demand for this.

2. As it stands, you can only park the tiller in ST1. The tiller has been giving me problems (blowing up and such) and would rather have the choice between the tiller and tower ladder - I may have a fix for the tiller blowing up, but I havent tested it. For those who want to test this fix, go to the editor, and edit each protototype making sure the box next to fire is empty. It should not have a circle or x in the box. It should be empty for all 3. Any one who can test this and confirm or deny if this works, would be much appreciated.I'm not sure off hand if this will work, but if you want to edit all 3 fire station scripts changing OBJ_TILLER to OBJ_LADDER this may work. If theres more demand to replace the tower at FS1(not because of this bug, but because they prefer the tower ladder) then I will see about releasing an alternate set of fire scripts for those interested.

0

Share this post


Link to post
Share on other sites

Xplorer awesome job on the 4x4 mod, it's really breathed some life into EM4 and the LA Mod for me and a few friends :)

Is there an easy fix to add the stretcher/paramedic combo back into the ambulances, i've poked around the scripts and XML's but still very much a novice at any editing in this realm.

Also do you know when you may have it fixed re: the auto empty of the vehicles. Again I want to emphasize no pressure you've done a LOT of late but mostly a curiosity :)

Thanks again!

BP

0

Share this post


Link to post
Share on other sites

Ill upload the files to change the ambulances back to a Medic/Stretcher EMT/Stretcher Combo tomorrow, well later today technically, but its time i try to get some sleep for the night. However I have my LAFirestationStart.script open so I will try to cover it briefly. This will only apply to Ambos that are spawned at the start of the game. The fix for the rest will be later today. In LAFireStationStart find:

ActorList l15 = Game::GetActors(VO_AMBULANCE01);
for(int i=0; i < l15.GetNumActors(); i++)
{
Vector Ambulance01 = l15.GetActor(0)->GetPosition();
Vehicle m = Game::CreateVehicle(OBJ_AMBULANCE02, UNNAMED);
m.EnableBlueLights(false);
m.SetPosition(Ambulance01);
m.SetRotation(gate1);
m.UpdatePlacement();
m.SetMaxPassengers(2);
m.SetMaxTransports(1);
m.SetSpeed(12.0f);
m.PushActionExecuteCommand(ACTION_NEWLIST, DUMMY_CALLCREW, Caller, 1, false);
m.PushActionWait(ACTION_APPEND, 0.5f);
m.PushActionExecuteCommand(ACTION_APPEND, DUMMY_CALLCREW, Caller, 1, false);
}
ActorList l16 = Game::GetActors(VO_AMBULANCE02);
for(int i=0; i < l16.GetNumActors(); i++)
{
Vector Ambulance02 = l16.GetActor(0)->GetPosition();
Vehicle m = Game::CreateVehicle(OBJ_AMBULANCE02, UNNAMED);
m.EnableBlueLights(false);
m.SetPosition(Ambulance02);
m.SetRotation(gate1);
m.UpdatePlacement();
m.SetMaxPassengers(2);
m.SetMaxTransports(1);
m.SetSpeed(12.0f);
m.PushActionWait(ACTION_NEWLIST, 1.0f);
m.PushActionExecuteCommand(ACTION_APPEND, DUMMY_CALLCREW, Caller, 1, false);
m.PushActionWait(ACTION_APPEND, 0.5f);
m.PushActionExecuteCommand(ACTION_APPEND, DUMMY_CALLCREW, Caller, 1, false);
}
ActorList l17 = Game::GetActors(VO_AMBULANCE03);
for(int i=0; i < l17.GetNumActors(); i++)
{
Vector Ambulance03 = l17.GetActor(0)->GetPosition();
Vehicle m = Game::CreateVehicle(OBJ_AMBULANCE02, UNNAMED);
m.EnableBlueLights(false);
m.SetPosition(Ambulance03);
m.UpdatePlacement();
m.SetMaxPassengers(2);
m.SetMaxTransports(1);
m.SetSpeed(12.0f);
m.PushActionWait(ACTION_NEWLIST, 1.0f);
m.PushActionExecuteCommand(ACTION_APPEND, DUMMY_CALLCREW, Caller, 1, false);
m.PushActionWait(ACTION_APPEND, 0.5f);
m.PushActionExecuteCommand(ACTION_APPEND, DUMMY_CALLCREW, Caller, 1, false);
}

Replace with:

ActorList l15 = Game::GetActors(VO_AMBULANCE01);
for(int i=0; i < l15.GetNumActors(); i++)
{
Vector Ambulance01 = l15.GetActor(0)->GetPosition();
Vehicle m = Game::CreateVehicle(OBJ_AMBULANCE02, UNNAMED);
m.EnableBlueLights(false);
m.SetPosition(Ambulance01);
m.SetRotation(gate1);
m.UpdatePlacement();
m.SetMaxPassengers(2);
m.SetMaxTransports(1);
m.SetSpeed(12.0f);
m.PushActionExecuteCommand(ACTION_NEWLIST, DUMMY_CALLCREW, Caller, 1, false);
m.PushActionWait(ACTION_APPEND, 0.5f);
m.PushActionExecuteCommand(ACTION_APPEND, DUMMY_CALLCREW, Caller, 2, false);
}
ActorList l16 = Game::GetActors(VO_AMBULANCE02);
for(int i=0; i < l16.GetNumActors(); i++)
{
Vector Ambulance02 = l16.GetActor(0)->GetPosition();
Vehicle m = Game::CreateVehicle(OBJ_AMBULANCE02, UNNAMED);
m.EnableBlueLights(false);
m.SetPosition(Ambulance02);
m.SetRotation(gate1);
m.UpdatePlacement();
m.SetMaxPassengers(2);
m.SetMaxTransports(1);
m.SetSpeed(12.0f);
m.PushActionWait(ACTION_NEWLIST, 1.0f);
m.PushActionExecuteCommand(ACTION_APPEND, DUMMY_CALLCREW, Caller, 1, false);
m.PushActionWait(ACTION_APPEND, 0.5f);
m.PushActionExecuteCommand(ACTION_APPEND, DUMMY_CALLCREW, Caller, 2, false);
}
ActorList l17 = Game::GetActors(VO_AMBULANCE03);
for(int i=0; i < l17.GetNumActors(); i++)
{
Vector Ambulance03 = l17.GetActor(0)->GetPosition();
Vehicle m = Game::CreateVehicle(OBJ_AMBULANCE02, UNNAMED);
m.EnableBlueLights(false);
m.SetPosition(Ambulance03);
m.UpdatePlacement();
m.SetMaxPassengers(2);
m.SetMaxTransports(1);
m.SetSpeed(12.0f);
m.PushActionWait(ACTION_NEWLIST, 1.0f);
m.PushActionExecuteCommand(ACTION_APPEND, DUMMY_CALLCREW, Caller, 1, false);
m.PushActionWait(ACTION_APPEND, 0.5f);
m.PushActionExecuteCommand(ACTION_APPEND, DUMMY_CALLCREW, Caller, 2, false);
}

Now this is just the basics. It only works on ALS Ambos, but using the same principal of changing 1 of the 1s to a 2, you can make the changes yourself. Like I said I will put up alternate scripts tomorrow.

0

Share this post


Link to post
Share on other sites

Hi chaps cant get this add on to work, whats up with la mod 4x4??

Edited by Francis
Removed the quote
0

Share this post


Link to post
Share on other sites

First, please dont quote a whole post for no reason. There is a quick reply.

As for getting it to work, I am afraid I dont know how to explain it any easier then the instructions in the read me file.

If some one else could try to explain it in easier terms then I did in the read me, I would appreciate it.

0

Share this post


Link to post
Share on other sites

Its possible, but I originally had trouble with it so I didnt include it, however, I am not convinced its really needed. Well atleast with the way I play. Any time I have a structure fire, the BC goes out, and so does the nearest light force. So if I need a another light force its going to automatically call the the other light force because I already have a light force on seen. I will keep it in mind for the future but would like to see if theres more demand for this.

My bigget thing with that is when you call a light force, it calls a BLS engine. so even if the ladder in ST2 is closest, you have to wait 85 years for the BLS from ST1 to get there. instead of calling A light force, you could call lightforce ST1 or ST2. From what you've said, I play similarly for the most part. The only problem i have with the tiller is that it likes to 'splode every time anything hotter than a lit match is within 5 yards of it. I didn't like it at first with it's trailer physics but i'm finding it is easier to position than the tower ladder. Not to mention it looks pretty badass on a scene when you have 2 different aerials shooting water. I'll try your fix... after sleep... and see what happens

0

Share this post


Link to post
Share on other sites

Can some please send me patch 1 because it wont let me download it off here :( ?

0

Share this post


Link to post
Share on other sites

My bigget thing with that is when you call a light force, it calls a BLS engine. so even if the ladder in ST2 is closest, you have to wait 85 years for the BLS from ST1 to get there. instead of calling A light force, you could call lightforce ST1 or ST2. From what you've said, I play similarly for the most part. The only problem i have with the tiller is that it likes to 'splode every time anything hotter than a lit match is within 5 yards of it. I didn't like it at first with it's trailer physics but i'm finding it is easier to position than the tower ladder. Not to mention it looks pretty badass on a scene when you have 2 different aerials shooting water. I'll try your fix... after sleep... and see what happens

I may look in to adding a command for the different light forces. I will see if I cant give the tiller a test later and see if that fixes the explosion issue.

Can some please send me patch 1 because it wont let me download it off here :( ?

It works fine for me. If your just now getting patch 1, why not grab the first zip which has patches 1,2,and 3 applied? but heres some mirrors:

http://sharebee.com/8c037384

Go to the site and then select which of the 5 sites you would like to download it from.

0

Share this post


Link to post
Share on other sites

I may look in to adding a command for the different light forces. I will see if I cant give the tiller a test later and see if that fixes the explosion issue.

It works fine for me. If your just now getting patch 1, why not grab the first zip which has patches 1,2,and 3 applied? but heres some mirrors:

http://sharebee.com/8c037384

Go to the site and then select which of the 5 sites you would like to download it from.

This does not work that site could you just attach the file ina email message an dsend me via email

its

oh_no_itz_shadow@hotmail.com

0

Share this post


Link to post
Share on other sites

Tried your fix. I went into the editor and made sure the boxes for "fire" did not have X's. This did not work

0

Share this post


Link to post
Share on other sites

Tried your fix. I went into the editor and made sure the boxes for "fire" did not have X's. This did not work

But did you make sure the boxes were empty?

0

Share this post


Link to post
Share on other sites

But did you make sure the boxes were empty?

yes, the boxes next to fire were empty. no X's or O's. thing caught quicker than ever

0

Share this post


Link to post
Share on other sites

New bug......

The "large ambulance" doesn't work correctly. I can't send the two paramedics to get the stretcher and an existing stretcher cannot enter the vehicle.

0

Share this post


Link to post
Share on other sites

yes, the boxes next to fire were empty. no X's or O's. thing caught quicker than ever

Ok just wanted to confirm it was empty as it wasnt quite clear, but I had a bad feeling that was going to be the case. Let's hope Hoppah will get back to me soon on the matter!

New bug......

The "large ambulance" doesn't work correctly. I can't send the two paramedics to get the stretcher and an existing stretcher cannot enter the vehicle.

Not a bug..read the Read Me file. It states the LRA is not an Ambulance, it is a rescue truck.

0

Share this post


Link to post
Share on other sites

Not a bug..read the Read Me file. It states the LRA is not an Ambulance, it is a rescue truck.

My bad.....Then why not call it a rescue truck instead of and ambulance? Just wondering....

Great mod, BTW!!!!

0

Share this post


Link to post
Share on other sites

Actually the thought hadnt crossed my mind. Ill consider that. Thanks for the suggestion.

0

Share this post


Link to post
Share on other sites

Could be my master game but calling a lightforce only calls the tower and no engine

0

Share this post


Link to post
Share on other sites

Hmm that doesnt seem to be the case for others, but i will look into the lighforce command as I have a feeling i know where i went wrong last time.

Also some one asked if the game is supposed to start at dusk, yes it should be dark out when the game starts. I have noticed that by playing different times of the day, the game can differ quite a bit in the type of calls you get. So i figured since normally the mod starts during the day I would start it at night, plus i like the dark has you can see the radiation from the units better.

0

Share this post


Link to post
Share on other sites

Could be my master game but calling a lightforce only calls the tower and no engine

Well at least you get an engine... I only get a ladder lol :(

0

Share this post


Link to post
Share on other sites

Well at least you get an engine... I only get a ladder lol :(

That's what i get too, it's easy enough for the BC to dispach an engine but takes that bit longer

for you 4x4 heres the PcmdCallLightForce script extract from my scripts folder.

PcmdCallLightForce()
{
SetIcon("calllightforce");
SetCursor("callassistance");
SetValidTargets(ACTOR_FLOOR | ACTOR_VIRTUAL);
SetDeselectCaller(false);
SetSelfClickActivation(true);
SetHighlightingEnabled(false);
SetGroupID(CGROUP_GETEQUIPMENT);
SetGroupLeader(true);
}

bool CheckPossible(GameObject *Caller)
{
GameObjectList SelectPer = Game::GetSelectedGameObjects();
if (SelectPer.GetNumObjects() != 1)
return false;

Person p(Caller);
if(p.IsValid() && (p.IsLinkedWithPerson() || p.IsCarryingPerson() || p.IsEquipped() || p.IsPulling() || p.GetFirehoseID()!=0 || p.GetEnteredCarID() != -1))
return false;

if (p.IsCurrentAction("EActionTreatPerson"))
return false;

if (!Caller->IsValid() || Caller->GetType() != ACTOR_PERSON)
return false;

return true;
}

bool CheckTarget(GameObject *Caller, Actor *Target, int childID)
{
if(!Caller->IsValid() || Caller->GetID() == Target->GetID())
return false;

if (Caller->GetType() != ACTOR_PERSON)
return false;

Person p(Caller);
if(p.IsValid() && (p.IsLinkedWithPerson() || p.IsCarryingPerson() || p.IsEquipped() || p.IsPulling() || p.GetFirehoseID()!=0 || p.GetEnteredCarID() != -1))
return false;

if (p.IsCurrentAction("EActionTreatPerson"))
return false;

return true;
}

void PushActions(GameObject *Caller, Actor *Target, int ChildID)
{
Vector CmdPos = Game::GetCommandPos();
Caller->PushActionTurnTo(ACTION_NEWLIST, CmdPos);
Caller->PushActionSwitchAnim(ACTION_APPEND, "talkmike");
Caller->PushActionWait(ACTION_APPEND, 3.5f);
Caller->PushActionSwitchAnim(ACTION_APPEND, "idle");
if(StrCompare(Caller->GetPrototypeFileName(), OBJ_BATTALION_CHIEF) == 0)
Audio::PlaySample3D(SND_BATLIGHTFORCE, Caller->GetPosition());
else if(StrCompare(Caller->GetPrototypeFileName(), OBJ_EMS_CAPTAIN) == 0)
Audio::PlaySample3D(SND_EMSLIGHTFORCE, Caller->GetPosition());

Vehicle *theCar = NULL;
float bestCar = 0.;
VehicleList patrolCars(VT_FIREFIGHTERS_DLK, VT_FIREFIGHTERS_RW);
for (int i = 0; i < patrolCars.GetNumVehicles(); i++)
{
Vehicle *aCar = patrolCars.GetVehicle(i);
if ((StrCompare(aCar->GetPrototypeFileName(), OBJ_LADDER) == 0 || StrCompare(aCar->GetPrototypeFileName(), OBJ_TILLER) == 0) && aCar->GetPlayerMP() == Caller->GetPlayerMP() && !aCar->HasCommand(DUMMY_VCALLED) && !aCar->IsInstalled() && (aCar->HasCommand(CMD_STANDBY_OFF) || aCar->IsCollidingWithVirtualObject(VO_SQUAD01)))
{
float distCurrCar = Math::dist(CmdPos.x, CmdPos.y, aCar->GetPosition().x, aCar->GetPosition().y);
if (distCurrCar < bestCar || bestCar == 0.)
{
theCar = aCar;
bestCar = distCurrCar;
}
}
}
if (theCar)
{
bool VehicleCalled = false;
if (theCar->HasCommand(CMD_STANDBY_OFF))
{
theCar->PushActionWait(ACTION_NEWLIST, 0.3f);
theCar->PushActionMove(ACTION_APPEND, CmdPos);
if (!theCar->HasCommand(DUMMY_HASSIREN) && theCar->HasCommand(CMD_AUTOSIREN_OFF) && !Input::LShiftPressed() && !Input::RShiftPressed())
Game::ExecuteCommand(CMD_SIREN, theCar, theCar);
if (theCar->HasCommand(CMD_STANDBY_OFF))
{
theCar->RemoveCommand(CMD_STANDBY_OFF);
theCar->AssignCommand(CMD_STANDBY_ON);
}
if (theCar->HasCommand(CMD_WARNINGLIGHTS_OFF))
{
theCar->EnableBlinker(BLT_NONE);
theCar->RemoveCommand(CMD_WARNINGLIGHTS_OFF);
theCar->AssignCommand(CMD_WARNINGLIGHTS_ON);
}
if (theCar->HasCommand(CMD_FLOODLIGHTS_OFF))
{
theCar->EnableSpecialLights(false);
theCar->RemoveCommand(CMD_FLOODLIGHTS_OFF);
theCar->AssignCommand(CMD_FLOODLIGHTS_ON);
}
Mission::PlayHint(HINT_DISPATCHED);
return;
}
else if (theCar->IsCollidingWithVirtualObject(VO_SQUAD01))
{
GameObjectList ppc;
Game::CollectObstaclesOnVirtualObject(VO_TILLER, ppc, ACTOR_VEHICLE);
for (int i = 0; i < ppc.GetNumObjects(); i++)
{
Vehicle v = ppc.GetObject(i);
if (!v.HasCommand(DUMMY_VCALLED))
{
v.AssignCommand(DUMMY_VCALLED);
VehicleCalled = true;
}
}
}
if (VehicleCalled)
{
if (v.IsBlueLightEnabled() && (Input::LShiftPressed() || Input::RShiftPressed()))
v.EnableBlueLights(false);
else if (!v.IsBlueLightEnabled() && !Input::LShiftPressed() && !Input::RShiftPressed())
v.EnableBlueLights(true);
GameObjectList gate03a = Game::GetGameObjects(OBJ_GATE03A);
for(int i=0; i < gate03a.GetNumObjects(); i++)
GameObject *gate = gate03a.GetObject(i);

PersonList passengers = v.GetPassengers();
if (passengers.GetNumPersons() == 0)
{
v.PushActionExecuteCommand(ACTION_NEWLIST, DUMMY_CALLCREW, Caller, 3, false);
v.PushActionExecuteCommand(ACTION_APPEND, DUMMY_CALLCREW, Caller, 3, false);
v.PushActionWait(ACTION_APPEND, 10.f);
}
if (gate->GetUserData() == 0)
{
v.PushActionExecuteCommand(ACTION_APPEND, DUMMY_GATES, Caller, 5, false);
Vector Move = v.GetPosition();
float r[9];
float childr[9];
v.GetRotation(r[0], r[1], r[2], r[3], r[4], r[5], r[6], r[7], r[8]);
float dx = 750.f, dy = 0.f, dz = 0.f;
Math::RotateVector(dx, dy, dz, r);
Math::EulerToMatrix(0.0f, 0.f, 0.f, childr);
Math::MultiplyMatrices(childr, r);
Move = Move + Vector(dx, dy, 0);
v.PushActionWait(ACTION_APPEND, 1.2f);
if (!v.HasCommand(DUMMY_HASSIREN) && v.HasCommand(CMD_AUTOSIREN_OFF) && !Input::LShiftPressed() && !Input::RShiftPressed())
v.PushActionExecuteCommand(ACTION_APPEND, CMD_SIREN, Caller, 0, false);
v.PushActionMove(ACTION_APPEND, Move);
v.PushActionExecuteCommand(ACTION_APPEND, DUMMY_GATES, Caller, 5, false);
v.PushActionExecuteCommand(ACTION_APPEND, DUMMY_VCALLED, Caller, 0, false);
v.PushActionMove(ACTION_APPEND, CmdPos);
} else
{
if (!v.HasCommand(DUMMY_HASSIREN) && v.HasCommand(CMD_AUTOSIREN_OFF) && !Input::LShiftPressed() && !Input::RShiftPressed())
v.PushActionExecuteCommand(ACTION_APPEND, CMD_SIREN, Caller, 0, false);
v.PushActionExecuteCommand(ACTION_APPEND, DUMMY_VCALLED, Caller, 0, false);
v.PushActionMove(ACTION_APPEND, CmdPos);
}
if (v.HasCommand(CMD_STANDBY_OFF))
{
v.RemoveCommand(CMD_STANDBY_OFF);
v.AssignCommand(CMD_STANDBY_ON);
}
if (v.HasCommand(CMD_WARNINGLIGHTS_OFF))
{
v.EnableBlinker(BLT_NONE);
v.RemoveCommand(CMD_WARNINGLIGHTS_OFF);
v.AssignCommand(CMD_WARNINGLIGHTS_ON);
}
if (v.HasCommand(CMD_FLOODLIGHTS_OFF))
{
v.EnableSpecialLights(false);
v.RemoveCommand(CMD_FLOODLIGHTS_OFF);
v.AssignCommand(CMD_FLOODLIGHTS_ON);
}
Mission::PlayHint(HINT_DISPATCHED);

if (Input::LCtrlPressed() || Input::RCtrlPressed())
return;

bool Vehicle2Called = false;
bool Engine04 = false;
if (!Vehicle2Called)
{
GameObjectList l1;
Game::CollectObstaclesOnVirtualObject(VO_ENGINE02, l1, ACTOR_VEHICLE);
if(l1.GetNumObjects() > 0)
{
Vehicle e = l1.GetObject(0);
if (!e.HasCommand(DUMMY_VCALLED))
{
e.AssignCommand(DUMMY_VCALLED);
Vehicle2Called = true;
} else
Engine04 = true;
} else
Engine04 = true;
}
if (!Vehicle2Called && Engine04)
{
GameObjectList l1;
Game::CollectObstaclesOnVirtualObject(VO_ENGINE04, l1, ACTOR_VEHICLE);
if(l1.GetNumObjects() > 0)
{
Vehicle e = l1.GetObject(0);
if (!e.HasCommand(DUMMY_VCALLED))
{
e.AssignCommand(DUMMY_VCALLED);
Vehicle2Called = true;
}
}
}
if (!Vehicle2Called && Engine04)
{
Mission::PlayHint(HINT_NOENGINE);
return;
}
if (Vehicle2Called)
{
if (e.IsBlueLightEnabled() && (Input::LShiftPressed() || Input::RShiftPressed()))
e.EnableBlueLights(false);
else if (!e.IsBlueLightEnabled() && !Input::LShiftPressed() && !Input::RShiftPressed())
e.EnableBlueLights(true);

GameObjectList gate05a = Game::GetGameObjects(OBJ_GATE05A);
for(int i=0; i < gate05a.GetNumObjects(); i++)
GameObject *gate = gate05a.GetObject(i);

PersonList passengers = e.GetPassengers();
if (passengers.GetNumPersons() == 0)
{
e.PushActionExecuteCommand(ACTION_NEWLIST, DUMMY_CALLCREW, Caller, 3, false);
e.PushActionExecuteCommand(ACTION_APPEND, DUMMY_CALLCREW, Caller, 3, false);
e.PushActionExecuteCommand(ACTION_APPEND, DUMMY_CALLCREW, Caller, 3, false);
e.PushActionExecuteCommand(ACTION_APPEND, DUMMY_CALLCREW, Caller, 3, false);
e.PushActionWait(ACTION_APPEND, 7.f);
}
if (gate->GetUserData() == 0)
{
e.PushActionExecuteCommand(ACTION_APPEND, DUMMY_GATES, Caller, 5, false);
Vector Move = e.GetPosition();
float r[9];
float childr[9];
e.GetRotation(r[0], r[1], r[2], r[3], r[4], r[5], r[6], r[7], r[8]);
float dx = 1050.f, dy = 0.f, dz = 0.f;
Math::RotateVector(dx, dy, dz, r);
Math::EulerToMatrix(0.0f, 0.f, 0.f, childr);
Math::MultiplyMatrices(childr, r);
Move = Move + Vector(dx, dy, 0);
e.PushActionWait(ACTION_APPEND, 1.2f);
if (!e.HasCommand(DUMMY_HASSIREN) && e.HasCommand(CMD_AUTOSIREN_OFF) && !Input::LShiftPressed() && !Input::RShiftPressed())
e.PushActionExecuteCommand(ACTION_APPEND, CMD_SIREN, Caller, 0, false);
e.PushActionMove(ACTION_APPEND, Move);
e.PushActionExecuteCommand(ACTION_APPEND, DUMMY_GATES, Caller, 5, false);
e.PushActionExecuteCommand(ACTION_APPEND, DUMMY_VCALLED, Caller, 0, false);
e.PushActionMove(ACTION_APPEND, CmdPos);
} else
{
if (!e.HasCommand(DUMMY_HASSIREN) && e.HasCommand(CMD_AUTOSIREN_OFF) && !Input::LShiftPressed() && !Input::RShiftPressed())
e.PushActionExecuteCommand(ACTION_APPEND, CMD_SIREN, Caller, 0, false);
e.PushActionExecuteCommand(ACTION_APPEND, DUMMY_VCALLED, Caller, 0, false);
e.PushActionMove(ACTION_APPEND, CmdPos);
}
if (e.HasCommand(CMD_STANDBY_OFF))
{
e.RemoveCommand(CMD_STANDBY_OFF);
e.AssignCommand(CMD_STANDBY_ON);
}
if (e.HasCommand(CMD_WARNINGLIGHTS_OFF))
{
e.EnableBlinker(BLT_NONE);
e.RemoveCommand(CMD_WARNINGLIGHTS_OFF);
e.AssignCommand(CMD_WARNINGLIGHTS_ON);
}
if (e.HasCommand(CMD_FLOODLIGHTS_OFF))
{
e.EnableSpecialLights(false);
e.RemoveCommand(CMD_FLOODLIGHTS_OFF);
e.AssignCommand(CMD_FLOODLIGHTS_ON);
}
return;
}
}
}
Vector Spawn;
Vector Rotate;
ActorList l1 = Game::GetActors(VO_SPAWN_ALL);
ActorList l2 = Game::GetActors(VO_SPAWN_FD);
ActorList l3 = Game::GetActors(VO_SPAWN_ALLR);
ActorList l4 = Game::GetActors(VO_SPAWN_FDR);
if(l1.GetNumActors() > 0)
{
Spawn = l1.GetActor(0)->GetPosition();
Rotate = l3.GetActor(0)->GetPosition();
}
else if(l2.GetNumActors() > 0)
{
Spawn = l2.GetActor(0)->GetPosition();
Rotate = l4.GetActor(0)->GetPosition();
}
else
{
Mission::PlayHint(HINT_NOLADDER);
return;
}

System::Log("Buy light force engine");
bool BuyAerialOnly = false;
int Money = Mission::GetMoneyLeft();
if (Money <= 4000)
{
Mission::PlayHint(HINT_NOLADDER);
return;
}
else if (Input::LCtrlPressed() || Input::RCtrlPressed())
BuyAerialOnly = true;
else if (Money <= 8000)
BuyAerialOnly = true;
if (BuyAerialOnly)
int NewMoney = Money - 4000;
else
int NewMoney = Money - 8000;
Mission::SetMoney(NewMoney);

Vehicle n;
Person p1;
Person p2;
n = Game::CreateVehicle(OBJ_LADDER, UNNAMED);
n.SetSpeed(9.0f);
p1 = Game::CreatePerson(OBJ_EMT, UNNAMED);
p2 = Game::CreatePerson(OBJ_EMT, UNNAMED);
n.SetPlayerMP(Caller->GetPlayerMP());
p1.SetPlayerMP(Caller->GetPlayerMP());
p2.SetPlayerMP(Caller->GetPlayerMP());
p1.SetUpgradeLevel(3);
p2.SetUpgradeLevel(3);
n.SetMaxPassengers(6);
n.SetMaxTransports(0);
n.AddPassenger(&p1);
n.AddPassenger(&p2);
n.SetPosition(Spawn);
n.UpdatePlacement();
n.Hide();
n.PushActionTurnTo(ACTION_NEWLIST, Rotate);
n.PushActionWait(ACTION_APPEND, 3.5f);
n.PushActionShowHide(ACTION_APPEND, false);
n.PushActionMove(ACTION_APPEND, CmdPos);
if (Game::IsMission())
n.RemoveCommand("VcmdToFireStation");

if (!n.HasCommand(DUMMY_HASSIREN) && n.HasCommand(CMD_AUTOSIREN_OFF) && !Input::LShiftPressed() && !Input::RShiftPressed())
Game::ExecuteCommand(CMD_SIREN, &n, &n);

if (BuyAerialOnly)
Mission::PlayHint(HINT_LADDERBOUGHT);
else if (!BuyAerialOnly)
{
Vehicle m;
Person p3;
Person p4;
Person p5;
Person p6;
m = Game::CreateVehicle(OBJ_ENGINE02, UNNAMED);
m.SetSpeed(9.0f);
p3 = Game::CreatePerson(OBJ_EMT, UNNAMED);
p4 = Game::CreatePerson(OBJ_EMT, UNNAMED);
p5 = Game::CreatePerson(OBJ_EMT, UNNAMED);
p6 = Game::CreatePerson(OBJ_EMT, UNNAMED);
m.SetPlayerMP(Caller->GetPlayerMP());
p3.SetPlayerMP(Caller->GetPlayerMP());
p4.SetPlayerMP(Caller->GetPlayerMP());
p5.SetPlayerMP(Caller->GetPlayerMP());
p6.SetPlayerMP(Caller->GetPlayerMP());
p3.SetUpgradeLevel(3);
p4.SetUpgradeLevel(3);
p5.SetUpgradeLevel(3);
p6.SetUpgradeLevel(3);
m.SetMaxPassengers(6);
m.SetMaxTransports(0);
m.AddPassenger(&p3);
m.AddPassenger(&p4);
m.AddPassenger(&p5);
m.AddPassenger(&p6);
m.SetPosition(Spawn);
m.UpdatePlacement();
m.Hide();
m.PushActionTurnTo(ACTION_NEWLIST, Rotate);
m.PushActionWait(ACTION_APPEND, 1.0f);
m.PushActionShowHide(ACTION_APPEND, false);
m.PushActionMove(ACTION_APPEND, CmdPos);
if (Game::IsMission())
m.RemoveCommand("VcmdToFireStation");

if (!m.HasCommand(DUMMY_HASSIREN) && m.HasCommand(CMD_AUTOSIREN_OFF) && !Input::LShiftPressed() && !Input::RShiftPressed())
Game::ExecuteCommand(CMD_SIREN, &m, &m);

Mission::PlayHint(HINT_LIGHTFORCEBOUGHT);
}
}
};]

0

Share this post


Link to post
Share on other sites

Also some one asked if the game is supposed to start at dusk, yes it should be dark out when the game starts. I have noticed that by playing different times of the day, the game can differ quite a bit in the type of calls you get. So i figured since normally the mod starts during the day I would start it at night, plus i like the dark has you can see the radiation from the units better.

That would be me who asked and i was jwing. I really like the idea as i like too play it like that also!

0

Share this post


Link to post
Share on other sites

That's what i get too, it's easy enough for the BC to dispach an engine but takes that bit longer

for you 4x4 heres the PcmdCallLightForce script extract from my scripts folder.

I think I can find the call light force command myself; i altered it after all. ;)Its really just taking up space.

Ill try to get the ambulance fixes up in a bit. I am trying to work out somethings in the fire scripts for w00ds map v1.

0

Share this post


Link to post
Share on other sites

I think I can find the call light force command myself; i altered it after all. ;)Its really just taking up space.

Ill try to get the ambulance fixes up in a bit. I am trying to work out somethings in the fire scripts for w00ds map v1.

Appologies, I added it incase it was a problem with my install of the game seeing how it doesn't seem to affect all people

0

Share this post


Link to post
Share on other sites

Thats alright, if you do need to post code, use the

tags.

For those of you that prefer 1 Medic/1 Stretcher for ALS Ambulances and 1 EMT/1 Stretcher for the BLS Ambulance I have uploaded 2 scripts to the ambulance.fix.zip file in the first post. Just place them inside the scripts folder for this mod, after you extract the zip of course.

0

Share this post


Link to post
Share on other sites

Thanks Xplorer , the submod is awesome!

In the future will patch 4 fix the exit on return to station?

0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now