Nod Turret Shell [message #267031] |
Mon, 18 June 2007 11:30 |
Brandon
Messages: 282 Registered: August 2006 Location: United States
Karma: 0
|
Recruit |
|
|
When you destroy a Nod Turret it leaves behind that annoying shell, how do you make it to where it doesn't leave behind a shell? If that's not possible then is it possible to make it to where you can blow up the shell (by destroying it too)? Or is it possible that you could replace the destroyed shell with an invisible object that doesn't affect where you move and all etc? If none of this crap is possible then I'll have to use JFW_Disable_Physical_Collison -.-
|
|
|
|
Re: Nod Turret Shell [message #267037 is a reply to message #267031] |
Mon, 18 June 2007 11:47 |
|
danpaul88
Messages: 5795 Registered: June 2004 Location: England
Karma: 0
|
General (5 Stars) |
|
|
Quote: | JFW_Destroy_Self_Timer (when created, a timer is started, when the timer expires, the object is destroyed)
Time (how long the timer should run for)
TimerNum (what number to use for the timer)
|
Alternatively attach the above to destroyed turret preset, and set Time to 0, it will destroy itself immediately.
[Updated on: Mon, 18 June 2007 11:48] Report message to a moderator
|
|
|
Re: Nod Turret Shell [message #267038 is a reply to message #267031] |
Mon, 18 June 2007 11:48 |
|
reborn
Messages: 3231 Registered: September 2004 Location: uk - london
Karma: 0
|
General (3 Stars) |
|
|
YuriVA777 wrote on Mon, 18 June 2007 14:30 | When you destroy a Nod Turret it leaves behind that annoying shell, how do you make it to where it doesn't leave behind a shell? If that's not possible then is it possible to make it to where you can blow up the shell (by destroying it too)? Or is it possible that you could replace the destroyed shell with an invisible object that doesn't affect where you move and all etc? If none of this crap is possible then I'll have to use JFW_Disable_Physical_Collison -.-
|
Erm, add this "if (strstr(Commands->Get_Preset_Name(obj),"deadturretpresetname")) {
Commands->Destroy_Object(obj);" to M00_disable_transition::created, so it would read like this:
void M00_Disable_Transition::Created(GameObject *obj){
if (strstr(Commands->Get_Preset_Name(obj),"deadturretpresetname")) {
Commands->Destroy_Object(obj);
}
That should just destroy the turret immediately when created. However there are other turrets that are not hard coded to spawn the dead one when they are destroyed.
|
|
|
|
|
|
Re: Nod Turret Shell [message #267549 is a reply to message #267031] |
Wed, 20 June 2007 13:34 |
Brandon
Messages: 282 Registered: August 2006 Location: United States
Karma: 0
|
Recruit |
|
|
I learned that the script used is: M00_Base_Defence. However, I found what was causing the problem, on the Dependencies tab there was something selected and after researching it I learned that it was the destruction shell. I removed it from the list and saved my preset library, but I've yet to test it out but I will today. Just thought I'd let everyone know, it's not a script issue, it's a dependencies issue.
|
|
|
Re: Nod Turret Shell [message #267613 is a reply to message #267038] |
Wed, 20 June 2007 21:03 |
Brandon
Messages: 282 Registered: August 2006 Location: United States
Karma: 0
|
Recruit |
|
|
Reborn wrote on Mon, 18 June 2007 13:48 |
YuriVA777 wrote on Mon, 18 June 2007 14:30 | When you destroy a Nod Turret it leaves behind that annoying shell, how do you make it to where it doesn't leave behind a shell? If that's not possible then is it possible to make it to where you can blow up the shell (by destroying it too)? Or is it possible that you could replace the destroyed shell with an invisible object that doesn't affect where you move and all etc? If none of this crap is possible then I'll have to use JFW_Disable_Physical_Collison -.-
|
Erm, add this "if (strstr(Commands->Get_Preset_Name(obj),"deadturretpresetname")) {
Commands->Destroy_Object(obj);" to M00_disable_transition::created, so it would read like this:
void M00_Disable_Transition::Created(GameObject *obj){
if (strstr(Commands->Get_Preset_Name(obj),"deadturretpresetname")) {
Commands->Destroy_Object(obj);
}
That should just destroy the turret immediately when created. However there are other turrets that are not hard coded to spawn the dead one when they are destroyed.
|
Umm... I tried the scripts and dependencies but it didn't work server side so Reborn, what exactly do I add this to?
|
|
|
|
Re: Nod Turret Shell [message #267775 is a reply to message #267031] |
Thu, 21 June 2007 10:50 |
Brandon
Messages: 282 Registered: August 2006 Location: United States
Karma: 0
|
Recruit |
|
|
Ok, I went and got rid of the turret shell dependencie but that didn't work, so I got rid of the script (M00_Base_Defence since there wasn't a Nod_Turret script there) and added the JFW_Base_Defence script instead but that failed to stop the shell from spawning after the turret is destroyed. So now I'm wondering if it's truly possible to stop it from spawning server side when the turret is destroyed. Any help would be appreciated.
|
|
|
Re: Nod Turret Shell [message #267781 is a reply to message #267031] |
Thu, 21 June 2007 11:08 |
|
zunnie
Messages: 2959 Registered: September 2003 Location: Netherlands
Karma: 0
|
General (2 Stars) |
|
|
open aow.cpp and find+remove:
Quote: | void M00_Disable_Transition::Killed(GameObject *obj, GameObject *shooter)
{
if (strstr(Commands->Get_Preset_Name(obj),"Nod_Turret_MP"))
{
GameObject *DestroyedTurret = Commands->Create_Object("Nod_Turret_Destroyed",Commands->Get_Position(obj));
Commands->Set_Facing(DestroyedTurret,Commands->Get_Facing(obj));
}
}
|
open aow.h and find+remove the green colored line:
Quote: | class M00_Disable_Transition : public ScriptImpClass {
void Created(GameObject *obj);
void Damaged(GameObject *obj, GameObject *damager, float damage);
void Killed(GameObject *obj, GameObject *shooter);
void Timer_Expired(GameObject *obj, int number);
bool PlayDamage;
};
|
Save and compile, then there wont be any destroyed turrets anymore.
Or, if you can point me to the SSAOW version you are using i can
do it for you if you want.
[Updated on: Thu, 21 June 2007 11:09] Report message to a moderator
|
|
|
|
|
|