[CODE]Beaconing prevention script zone [message #448619] |
Fri, 10 June 2011 12:13 |
iRANian
Messages: 4308 Registered: April 2011
Karma: 0
|
General (4 Stars) |
|
|
You need to compile a version of scripts.dll with this to be able to use it within LevelEdit, and of course the server needs to have this script.
In the header:
class Iran_Beaconing_Prevention_Zone : public ScriptImpClass {
void Entered(GameObject *obj,GameObject *enter);
void Timer_Expired(GameObject *obj,int number);
};
In the .cpp:
void Iran_Beaconing_Prevention_Zone::Entered(GameObject *obj,GameObject *enter)
{
Commands->Start_Timer(obj,this,0.1,Commands->Get_ID(enter));
}
void Iran_Beaconing_Prevention_Zone::Timer_Expired(GameObject *obj,int number)
{
GameObject* checkplayerobj = Commands->Find_Object(number);
if ( IsInsideZone(obj,checkplayerobj))
{
if (Get_Total_Bullets(checkplayerobj, "CnC_Weapon_NukeBeacon_Player"))
{
const char* currentweapon = Get_Current_Weapon(checkplayerobj);
if (strcmp(currentweapon, "CnC_Weapon_NukeBeacon_Player") == 0 && Get_Current_Bullets(checkplayerobj) > 0)
{
Remove_Weapon(checkplayerobj,"CnC_Weapon_NukeBeacon_Player");
Grant_Powerup(checkplayerobj,"CnC_POW_Nuclear_Missle_Beacon");
}
Commands->Start_Timer(obj,this,0.1,number);
}
else if (Get_Total_Bullets(checkplayerobj, "CnC_Weapon_IonCannonBeacon_Player"))
{
const char* currentweapon = Get_Current_Weapon(checkplayerobj);
if(strcmp(currentweapon,"CnC_Weapon_IonCannonBeacon_Player") == 0 && Get_Current_Bullets(checkplayerobj) > 0)
{
Remove_Weapon(checkplayerobj,"CnC_Weapon_IonCannonBeacon_Player");
Grant_Powerup(checkplayerobj,"CnC_POW_IonCannonBeacon_Player");
}
Commands->Start_Timer(obj,this,0.5,number);
}
}
}
ScriptRegistrant<Iran_Beaconing_Prevention_Zone> Iran_Beaconing_Prevention_Zone_Registrant("Iran_Beaconing_Prevention_Zone", "");
EDIT: Forgot to credit Blacky for helping me out and testing it, lol sorry dude
Long time and well respected Renegade community member, programmer, modder and tester.
Scripts 4.0 private beta tester since May 2011.
My Renegade server plugins releases
[Updated on: Wed, 10 August 2011 15:59] Report message to a moderator
|
|
|
|
|
|
|
|
|
Re: [CODE]Beaconing prevention script zone [message #451776 is a reply to message #448822] |
Tue, 16 August 2011 23:44 |
|
Jerad2142
Messages: 3809 Registered: July 2006 Location: USA
Karma: 6
|
General (3 Stars) |
|
|
Alternatively, you could have just moved the zones so the players could not plant in them, but clearly, it was easier to ignore my advice so, have fun with that.
Regardless if you were looking for a beacon prevent zone you should have done select weapon instead of adding and removing it, beings the server can still randomly crash if you are landed with empty hands when your beacon is removed.
Visit Jerad's deer sweat shop
[Updated on: Tue, 16 August 2011 23:46] Report message to a moderator
|
|
|