Renegade Public Forums
C&C: Renegade --> Dying since 2003™, resurrected in 2024!
Home » Renegade Discussions » Mod Release Forum » [CODE]Beaconing prevention script zone
[CODE]Beaconing prevention script zone [message #448619] Fri, 10 June 2011 12:13 Go to previous message
iRANian is currently offline  iRANian
Messages: 4308
Registered: April 2011
Karma:
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

 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: [Renegade Map] C&C_Enterway
Next Topic: Renegade 3D Logo
Goto Forum:
  


Current Time: Wed Dec 18 08:43:07 MST 2024

Total time taken to generate the page: 0.01315 seconds