Renegade Public Forums
C&C: Renegade --> Dying since 2003™, resurrected in 2024!
Home » Renegade Discussions » Mod Forum » ion storm effect function
ion storm effect function [message #300900] Tue, 04 December 2007 04:06 Go to next message
reborn is currently offline  reborn
Messages: 3231
Registered: September 2004
Location: uk - london
Karma: 0
General (3 Stars)
I created a function that looks like an ion storm to clients.
To fully appreciate it the client needs to have bhs.dll, as I make use of the fog. But it still looks pretty cool without the fog to be honest.
I was going to put this into an AOW mod I was working on, I still might in time, but I really need to take care of some things first.
Here's a link to a movie of it (don't worry about the end credits and such, I couldn't be bothered to re-make the movie).

http://www.mp-gaming.com/reborn/movies/ion_storm.wmv

Here is how I coded the function:

//GDI version

void reb_GDI_ion_storm::Created(GameObject *obj) {

// And he said "let there be weather!"

		Commands->Set_Rain(10.0f,3.5f,true);
	    Commands->Set_Fog_Enable(1);
		Commands->Set_Fog_Range (0.5,55,3.5f);
		Commands->Set_Wind(0.7f,2.0f,1.0f,3.5f);


		char ionstormmsg[128];
		char ionstormmsg2[128];
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0069i1evag_snd.wav");
		sprintf(ionstormmsg,"msg Warning!!!");
		Console_Input(ionstormmsg);
		sprintf(ionstormmsg2,"msg Ion Storm approaching...");
		Console_Input(ionstormmsg2);



		Commands->Start_Timer(obj,this,3.0f,1);
		Commands->Start_Timer(obj,this,4.0f,2);
		Commands->Start_Timer(obj,this,4.7f,3);
		Commands->Start_Timer(obj,this,14.7f,4);
		Commands->Start_Timer(obj,this,15.7f,5);
		Commands->Start_Timer(obj,this,16.7f,6);
		Commands->Start_Timer(obj,this,17.7f,7);
		Commands->Start_Timer(obj,this,18.7f,8);
		Commands->Start_Timer(obj,this,19.7f,9);
		Commands->Start_Timer(obj,this,20.4f,10);
		Commands->Start_Timer(obj,this,21.4f,11);
		Commands->Start_Timer(obj,this,22.0f,12);
		Commands->Start_Timer(obj,this,23.0f,13);
		Commands->Start_Timer(obj,this,23.6f,14);
		Commands->Start_Timer(obj,this,24.2f,15);
		Commands->Start_Timer(obj,this,24.8f,16);
		Commands->Start_Timer(obj,this,25.4f,17);
		Commands->Start_Timer(obj,this,26.6f,18);
		Commands->Start_Timer(obj,this,27.2f,19);
		Commands->Start_Timer(obj,this,28.2f,20);
		Commands->Start_Timer(obj,this,28.8f,21);
		Commands->Start_Timer(obj,this,29.6f,22);
		Commands->Start_Timer(obj,this,30.2f,23);
		Commands->Start_Timer(obj,this,31.2f,24);
		Commands->Start_Timer(obj,this,42.2f,25);
}

void reb_GDI_ion_storm::Timer_Expired(GameObject *obj, int number) {

	    char ionstormmsg[128];

	    if(number == 1){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0097i1evag_snd.wav");
		
	}
		if(number == 2){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0076i1evag_snd.wav");
		
	}
		if(number == 3){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0098i1evag_snd.wav");
		
	}
/////////////////////////////////////
// numer count down 5,4,3,2,1
/////////////////////////////////////
		if(number == 4){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0082i1evag_snd.wav");
		sprintf(ionstormmsg,"msg 5");
		Console_Input(ionstormmsg);
	}
		if(number == 5){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0083i1evag_snd.wav");
		sprintf(ionstormmsg,"msg 4");
		Console_Input(ionstormmsg);
	}
		if(number == 6){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0084i1evag_snd.wav");
		sprintf(ionstormmsg,"msg 3");
		Console_Input(ionstormmsg);
	}
		if(number == 7){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0085i1evag_snd.wav");
		sprintf(ionstormmsg,"msg 2");
		Console_Input(ionstormmsg);
	}
		if(number == 8){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0086i1evag_snd.wav");
		sprintf(ionstormmsg,"msg 1");
		Console_Input(ionstormmsg);
	}
////////////////////////////////
// actual storm starts here
////////////////////////////////
        if(number == 9){
Vector3 position;
position = Commands->Get_Position(Find_War_Factory(1));
position.Y += 20.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 10){
Vector3 position;
position = Commands->Get_Position(Find_Refinery(1));
position.Y -= 20.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 11){
Vector3 position;
position = Commands->Get_Position(Find_Soldier_Factory(1));
position.X += 15.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 12){
Vector3 position;
position = Commands->Get_Position(Find_Refinery(1));

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);

float refhealth = Commands->Get_Health(Find_Refinery(1));
Commands->Set_Health((Find_Refinery(1)),(refhealth/1.3f));
	}
		if(number == 13){
Vector3 position;
position = Commands->Get_Position(Find_War_Factory(1));
position.Y -= 20.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 14){
Vector3 position;
position = Commands->Get_Position(Find_Soldier_Factory(1));
position.Y -= 20.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 15){
Vector3 position;
position = Commands->Get_Position(Find_Base_Defense(1));


Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);

float agthealth = Commands->Get_Health(Find_Base_Defense(1));
Commands->Set_Health((Find_Base_Defense(1)),(agthealth/1.4f));
	}
		if(number == 16){
Vector3 position;
position = Commands->Get_Position(Find_Base_Defense(1));
position.X += 10.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 17){
Vector3 position;
position = Commands->Get_Position(Find_Soldier_Factory(1));

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);

float barhealth = Commands->Get_Health(Find_Soldier_Factory(1));
Commands->Set_Health((Find_Soldier_Factory(1)),(barhealth/1.35f));
	}
		if(number == 18){
Vector3 position;
position = Commands->Get_Position(Find_Refinery(1));
position.Y -= 10.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 19){
Vector3 position;
position = Commands->Get_Position(Find_Refinery(1));
position.X += 5.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 20){
Vector3 position;
position = Commands->Get_Position(Find_War_Factory(1));

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);

float wepshealth = Commands->Get_Health(Find_War_Factory(1));
Commands->Set_Health((Find_War_Factory(1)),(wepshealth/1.4f));
	}
		if(number == 21){
Vector3 position;
position = Commands->Get_Position(Find_War_Factory(1));
position.X += 10.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 22){
Vector3 position;
position = Commands->Get_Position(Find_Base_Defense(1));
position.Y += 15.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 23){
Vector3 position;
position = Commands->Get_Position(Find_Base_Defense(1));
position.X += 5.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 24){
Vector3 position;
position = Commands->Get_Position(Find_Power_Plant(1));

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);

float pphealth = Commands->Get_Health(Find_Power_Plant(1));
Commands->Set_Health((Find_Power_Plant(1)),(pphealth/1.3f));

//////////////////////////////////
/// turn the weather off 
///////////////////////////////////
		Commands->Set_Fog_Range (0.5f,350.0f,12.0f);
		Commands->Set_Rain(0.0f,10.0f,true);
		Commands->Set_Wind(0.0f,0.0f,0.0f,3.5f);
	}
		if(number == 25){
		Commands->Set_Fog_Enable(0);
		sprintf(ionstormmsg,"msg The ion-storm has sub-sided.");
		Console_Input(ionstormmsg);
	}

}




//Nod version

void reb_Nod_ion_storm::Created(GameObject *obj) {

// And he said "let there be weather!"

        Commands->Set_Rain(10.0f,3.5f,true);
	    Commands->Set_Fog_Enable(1);
		Commands->Set_Fog_Range (0.5,55,3.5f);
		Commands->Set_Wind(0.7f,2.0f,1.0f,3.5f);


		char ionstormmsg[128];
		char ionstormmsg2[128];
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0069i1evag_snd.wav");
		sprintf(ionstormmsg,"msg Warning!!!");
		Console_Input(ionstormmsg);
		sprintf(ionstormmsg2,"msg Ion Storm approaching...");
		Console_Input(ionstormmsg2);



		Commands->Start_Timer(obj,this,3.0f,1);
		Commands->Start_Timer(obj,this,4.0f,2);
		Commands->Start_Timer(obj,this,4.7f,3);
		Commands->Start_Timer(obj,this,14.7f,4);
		Commands->Start_Timer(obj,this,15.7f,5);
		Commands->Start_Timer(obj,this,16.7f,6);
		Commands->Start_Timer(obj,this,17.7f,7);
		Commands->Start_Timer(obj,this,18.7f,8);
		Commands->Start_Timer(obj,this,19.7f,9);
		Commands->Start_Timer(obj,this,20.4f,10);
		Commands->Start_Timer(obj,this,21.4f,11);
		Commands->Start_Timer(obj,this,22.0f,12);
		Commands->Start_Timer(obj,this,23.0f,13);
		Commands->Start_Timer(obj,this,23.6f,14);
		Commands->Start_Timer(obj,this,24.2f,15);
		Commands->Start_Timer(obj,this,24.8f,16);
		Commands->Start_Timer(obj,this,25.4f,17);
		Commands->Start_Timer(obj,this,26.6f,18);
		Commands->Start_Timer(obj,this,27.2f,19);
		Commands->Start_Timer(obj,this,28.2f,20);
		Commands->Start_Timer(obj,this,28.8f,21);
		Commands->Start_Timer(obj,this,29.6f,22);
		Commands->Start_Timer(obj,this,30.2f,23);
		Commands->Start_Timer(obj,this,31.2f,24);
		Commands->Start_Timer(obj,this,42.2f,25);
}

void reb_Nod_ion_storm::Timer_Expired(GameObject *obj, int number) {

	    char ionstormmsg[128];

	    if(number == 1){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0097i1evag_snd.wav");
		
	}
		if(number == 2){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0076i1evag_snd.wav");
		
	}
		if(number == 3){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0098i1evag_snd.wav");
		
	}
/////////////////////////////////////
// numer count down 5,4,3,2,1
/////////////////////////////////////
		if(number == 4){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0082i1evag_snd.wav");
		sprintf(ionstormmsg,"msg 5");
		Console_Input(ionstormmsg);
	}
		if(number == 5){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0083i1evag_snd.wav");
		sprintf(ionstormmsg,"msg 4");
		Console_Input(ionstormmsg);
	}
		if(number == 6){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0084i1evag_snd.wav");
		sprintf(ionstormmsg,"msg 3");
		Console_Input(ionstormmsg);
	}
		if(number == 7){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0085i1evag_snd.wav");
		sprintf(ionstormmsg,"msg 2");
		Console_Input(ionstormmsg);
	}
		if(number == 8){
		Commands->Create_2D_WAV_Sound("m00evag_dsgn0086i1evag_snd.wav");
		sprintf(ionstormmsg,"msg 1");
		Console_Input(ionstormmsg);
	}
////////////////////////////////
// actual storm starts here
////////////////////////////////
        if(number == 9){
Vector3 position;
position = Commands->Get_Position(Find_Airstrip(0));
position.Y += 20.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 10){
Vector3 position;
position = Commands->Get_Position(Find_Refinery(0));
position.Y -= 20.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 11){
Vector3 position;
position = Commands->Get_Position(Find_Soldier_Factory(0));
position.X += 15.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 12){
Vector3 position;
position = Commands->Get_Position(Find_Refinery(0));

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);

float refhealth = Commands->Get_Health(Find_Refinery(0));
Commands->Set_Health((Find_Refinery(0)),(refhealth/1.3f));
	}
		if(number == 13){
Vector3 position;
position = Commands->Get_Position(Find_Airstrip(0));
position.Y -= 20.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 14){
Vector3 position;
position = Commands->Get_Position(Find_Soldier_Factory(0));
position.Y -= 20.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 15){
Vector3 position;
position = Commands->Get_Position(Find_Base_Defense(0));


Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);

float obhealth = Commands->Get_Health(Find_Base_Defense(0));
Commands->Set_Health((Find_Base_Defense(0)),(obhealth/1.4f));
	}
		if(number == 16){
Vector3 position;
position = Commands->Get_Position(Find_Base_Defense(0));
position.X += 10.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 17){
Vector3 position;
position = Commands->Get_Position(Find_Soldier_Factory(0));

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);

float handhealth = Commands->Get_Health(Find_Soldier_Factory(0));
Commands->Set_Health((Find_Soldier_Factory(0)),(handhealth/1.35f));
	}
		if(number == 18){
Vector3 position;
position = Commands->Get_Position(Find_Refinery(0));
position.Y -= 10.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 19){
Vector3 position;
position = Commands->Get_Position(Find_Refinery(0));
position.X += 5.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 20){
Vector3 position;
position = Commands->Get_Position(Find_Airstrip(0));

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);

float striphealth = Commands->Get_Health(Find_Airstrip(0));
Commands->Set_Health((Find_Airstrip(0)),(striphealth/1.4f));
	}
		if(number == 21){
Vector3 position;
position = Commands->Get_Position(Find_Airstrip(0));
position.X += 10.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 22){
Vector3 position;
position = Commands->Get_Position(Find_Base_Defense(0));
position.Y += 15.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 23){
Vector3 position;
position = Commands->Get_Position(Find_Base_Defense(0));
position.X += 5.0f;

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);
	}
		if(number == 24){
Vector3 position;
position = Commands->Get_Position(Find_Power_Plant(0));

Commands->Create_2D_WAV_Sound("ion_fire.wav");
Commands->Create_Explosion("Explosion_Mine_Remote_01",position,obj);
Commands->Create_Object("Beacon_Ion_Cannon_Anim_Post",position);

float pphealth = Commands->Get_Health(Find_Power_Plant(0));
Commands->Set_Health((Find_Power_Plant(0)),(pphealth/1.3f));

//////////////////////////////////
/// turn the weather off 
///////////////////////////////////
		Commands->Set_Fog_Range (0.5f,350.0f,12.0f);
		Commands->Set_Rain(0.0f,10.0f,true);
		Commands->Set_Wind(0.0f,0.0f,0.0f,3.5f);
	}
		if(number == 25){
		Commands->Set_Fog_Enable(0);
		sprintf(ionstormmsg,"msg The ion-storm has sub-sided.");
		Console_Input(ionstormmsg);
	}

}




ScriptRegistrant<reb_GDI_ion_storm> reb_GDI_ion_storm_Registrant("reb_GDI_ion_storm","");

ScriptRegistrant<reb_Nod_ion_storm> reb_Nod_ion_storm_Registrant("reb_Nod_ion_storm","");



class reb_GDI_ion_storm : public ScriptImpClass {
	void Created(GameObject *obj);
	void Timer_Expired(GameObject *obj,int number);
};



class reb_Nod_ion_storm : public ScriptImpClass {
	void Created(GameObject *obj);
	void Timer_Expired(GameObject *obj,int number);
};




For testing I called these functions by a chat hook. Obviously you're going to want to call the functions some other way, perhaps a crate, a random weather effect or some other way.
But here is my chat hook for it anyway.


class GDIionstormChatCommand : public ChatCommandClass {
	void Triggered(int ID,const TokenClass &Text,int ChatType) {
		GameObject *obj = Get_GameObj(ID);
		Commands->Attach_Script(obj,"reb_GDI_ion_storm","");
	}
};
ChatCommandRegistrant<GDIionstormChatCommand> GDIionstormChatCommandReg("!iong",CHATTYPE_TEAM,0,GAMEMODE_AOW);

class NodionstormChatCommand : public ChatCommandClass {
	void Triggered(int ID,const TokenClass &Text,int ChatType) {
		GameObject *obj = Get_GameObj(ID);
		Commands->Attach_Script(obj,"reb_Nod_ion_storm","");
	}
};
ChatCommandRegistrant<NodionstormChatCommand> NodionstormChatCommandReg("!ionn",CHATTYPE_TEAM,0,GAMEMODE_AOW);



Re: ion storm effect function [message #300905 is a reply to message #300900] Tue, 04 December 2007 04:57 Go to previous messageGo to next message
Ryu is currently offline  Ryu
Messages: 2833
Registered: September 2006
Location: Liverpool, England.
Karma: 0
General (2 Stars)

Sexy.

Presence is a curious thing, if you think you need to prove it... you probably never had it in the first place.
Re: ion storm effect function [message #300917 is a reply to message #300905] Tue, 04 December 2007 08:06 Go to previous messageGo to next message
Jerad2142 is currently offline  Jerad2142
Messages: 3813
Registered: July 2006
Location: USA
Karma: 6
General (3 Stars)
Lol, you even have it set up to hit the buildings, just like in TS. Nice. Oh, I guess you say that in the video, I was just reading through the code.

[Updated on: Tue, 04 December 2007 08:13]

Report message to a moderator

Re: ion storm effect function [message #300924 is a reply to message #300905] Tue, 04 December 2007 08:14 Go to previous messageGo to next message
sadukar09 is currently offline  sadukar09
Messages: 2812
Registered: May 2007
Location: Ottawa,Canada
Karma: 0
General (2 Stars)
Ryu wrote on Tue, 04 December 2007 05:57

Sexy.

Reborn/Reb00b (hehe) 2nd 1337est person in Renegade modding. Rocked Over


Quote:

[19:16:48] <APBBR> @ryan3k: THE ENFIELD DEFIES THE LAWS OF PHYSICS BECAUSE THE BULLETS INSTANTLY HIT THEIR TARGETS LOL
[19:16:52] <APBBR> @ryan3k: CHRONO TECHNOLOGY IN TEH BULLETS


Quote:

[22:48]<APBBR> @V0LK0V: AOL COMING UR WAI K
[22:48] <APBBR> Host: Quitting due to Westwood Online connection loss.

Re: ion storm effect function [message #300940 is a reply to message #300924] Tue, 04 December 2007 09:42 Go to previous messageGo to next message
The Elite Officer is currently offline  The Elite Officer
Messages: 602
Registered: September 2007
Location: Chapel Hill, North Caroli...
Karma: 0
Colonel
I love the ion storm in TS.

The reason Uranus is tilted 90 degrees is because god got angry and kicked it over.....
Re: ion storm effect function [message #300953 is a reply to message #300900] Tue, 04 December 2007 10:55 Go to previous messageGo to next message
havoc9826 is currently offline  havoc9826
Messages: 562
Registered: April 2006
Location: California, USA
Karma: 0
Colonel
Very nice. If C&C Reborn actually ever comes out, this might add a bit of atmosphere to it.

http://img82.imageshack.us/img82/8886/CommandoSig.jpg
Re: ion storm effect function [message #300958 is a reply to message #300900] Tue, 04 December 2007 11:04 Go to previous messageGo to next message
Di3HardNL is currently offline  Di3HardNL
Messages: 1273
Registered: December 2006
Location: Netherlands
Karma: 0
General (1 Star)
loooks good!

http://i236.photobucket.com/albums/ff5/Di3HardNL/Di3Logo-1.jpg

Visit My website to download all kind of models for Renegade! Also learn how to create your own stuff with my tutorials!
www.renegademodels.tk

Check out my video's on my Youtube profile!
http://www.youtube.com/user/Di3HardNL
Re: ion storm effect function [message #300966 is a reply to message #300917] Tue, 04 December 2007 11:28 Go to previous messageGo to next message
IronWarrior is currently offline  IronWarrior
Messages: 2460
Registered: November 2004
Location: England UK
Karma: 0
General (2 Stars)
Jerad Gray wrote on Tue, 04 December 2007 09:06

Lol, you even have it set up to hit the buildings, just like in TS. Nice. Oh, I guess you say that in the video, I was just reading through the code.


Smart arse. ^^

Ah Reborn, I know what you going though, but when you though it, I do hope you get time to make the uber mod you doing, I've looking forward to it.
Re: ion storm effect function [message #301018 is a reply to message #300900] Tue, 04 December 2007 14:18 Go to previous messageGo to next message
Tankkiller is currently offline  Tankkiller
Messages: 192
Registered: February 2006
Location: Oklahoma, OK!
Karma: 0
Recruit
Hmm... Renardin/dante proply needs to see this

http://i186.photobucket.com/albums/x78/a-10_man/sig.jpg

BYE, BYE FLAME TANK!!!
Re: ion storm effect function [message #301028 is a reply to message #301018] Tue, 04 December 2007 14:50 Go to previous messageGo to next message
IronWarrior is currently offline  IronWarrior
Messages: 2460
Registered: November 2004
Location: England UK
Karma: 0
General (2 Stars)
Tankkiller wrote on Tue, 04 December 2007 15:18

Hmm... Renardin/dante proply needs to see this


Yeah, I made a topic about it over at our Reborn forums. Thumbs Up
Re: ion storm effect function [message #301055 is a reply to message #300900] Tue, 04 December 2007 16:06 Go to previous messageGo to next message
Renardin6 is currently offline  Renardin6
Messages: 1570
Registered: December 2003
Location: Belgium
Karma: 0
General (1 Star)

awesome. I want it. Any video preview?
Re: ion storm effect function [message #301058 is a reply to message #301055] Tue, 04 December 2007 16:14 Go to previous messageGo to next message
havoc9826 is currently offline  havoc9826
Messages: 562
Registered: April 2006
Location: California, USA
Karma: 0
Colonel
Renardin6 wrote on Tue, 04 December 2007 15:06

awesome. I want it. Any video preview?

reborn wrote on Tue, 04 December 2007 03:06

http://www.mp-gaming.com/reborn/movies/ion_storm.wmv


Now if only the fog could be yellow, the ion effects replaced with lightning bolts, and put on MutationRedux... Also, if this actually gets into C&C Reborn as a crate or a feature of specific maps, remember to make it disable radar and hover/flying vehicles.


http://img82.imageshack.us/img82/8886/CommandoSig.jpg

[Updated on: Tue, 04 December 2007 16:25]

Report message to a moderator

Re: ion storm effect function [message #301098 is a reply to message #300900] Tue, 04 December 2007 19:53 Go to previous messageGo to next message
Gen_Blacky is currently offline  Gen_Blacky
Messages: 3250
Registered: September 2006
Karma: 1
General (3 Stars)
good job reborn ill proly put it on my servers

http://s18.postimage.org/jc6qbn4k9/bricks3.png
Re: ion storm effect function [message #306638 is a reply to message #300900] Sun, 30 December 2007 07:57 Go to previous messageGo to next message
wittebolx is currently offline  wittebolx
Messages: 332
Registered: May 2007
Location: the netherlands
Karma: 0
Recruit
thx for the code Reborn.
i compiled it and tested it, looks very good (best thing ive seen)
now im adding it to the Vet System, any ideas?


Re: ion storm effect function [message #307203 is a reply to message #300900] Tue, 01 January 2008 17:14 Go to previous messageGo to next message
Nightma12 is currently offline  Nightma12
Messages: 2593
Registered: August 2003
Karma: 0
General (2 Stars)
Category Moderator
Does this damage infantry outside/near the building at the same time?

Perhaps if this was modified to have a quick burst of the ion cannon beam appear with each explosion? - so like a static image of the ion cannon to sort of look like a lighting bolt?
Re: ion storm effect function [message #307256 is a reply to message #300900] Tue, 01 January 2008 22:18 Go to previous messageGo to next message
reborn is currently offline  reborn
Messages: 3231
Registered: September 2004
Location: uk - london
Karma: 0
General (3 Stars)
If a player is near the explosion then yes, they will recieve some damage. The explosions do not just happen at the same position as the buildings, I just use the building positions so that it can be used dynamically for any map without having to hard code it for all them.

I'm not sure is there is a bolt like animation that lasts for a second :-/



Re: ion storm effect function [message #315691 is a reply to message #300900] Wed, 06 February 2008 00:22 Go to previous messageGo to next message
ExEric3 is currently offline  ExEric3
Messages: 746
Registered: February 2005
Location: Slovakia
Karma: 0
Colonel
I added this to crates and I had this problem. Is someone during this Storm attack to agt or obelisk then this storm stay forever (never subsided until is not created this storm again).

Any ideas how to fix it?
Re: ion storm effect function [message #315718 is a reply to message #300900] Wed, 06 February 2008 03:56 Go to previous messageGo to next message
reborn is currently offline  reborn
Messages: 3231
Registered: September 2004
Location: uk - london
Karma: 0
General (3 Stars)
Ah, if your attaching the script tot he player object and the player dies then the script would get destroyed. But I guess setting the weather functions means they would stay on...
Try attaching the script to an invisible object instead of the player obj.



Re: ion storm effect function [message #315792 is a reply to message #300900] Wed, 06 February 2008 11:26 Go to previous messageGo to next message
Genesis2001
Messages: 1397
Registered: August 2006
Karma: 0
General (1 Star)
When the player picks up the crate, use Commands->Get_Postion(obj) on the player to get the player's position. Then Commands->Create_Object("invisible_object", <player's position>) then attach the script to that object. ^,^

~Zack
Re: ion storm effect function [message #315796 is a reply to message #300900] Wed, 06 February 2008 11:37 Go to previous messageGo to next message
reborn is currently offline  reborn
Messages: 3231
Registered: September 2004
Location: uk - london
Karma: 0
General (3 Stars)
The invisible obj can be created anywhere on the map really, doesn't need to be at the players position. You could hard code the spawn location at 0,0,0 if you wanted to...

The weather effects happens globally on the map, but the ion blasts happen around the base building's, not to the player/obj the script is attached to. It wouldn't be too hard to make it happen around random players though aswell...



Re: ion storm effect function [message #315829 is a reply to message #300900] Wed, 06 February 2008 13:13 Go to previous messageGo to next message
Genesis2001
Messages: 1397
Registered: August 2006
Karma: 0
General (1 Star)
I'm just saying that's what I'd do Tell Me


~Zack
Re: ion storm effect function [message #315833 is a reply to message #315829] Wed, 06 February 2008 13:26 Go to previous messageGo to next message
R315r4z0r is currently offline  R315r4z0r
Messages: 3836
Registered: March 2005
Location: New York
Karma: 0
General (3 Stars)
Is there anyway that the actual animation and emitters used as the "lightning" could be changed and modded to actual lightning? (As well as new sound effects)

I'm taking about in a mod like Reborn, where that sort of thing can actually be made into the game, rather than Renegade where the effects are already there.
Re: ion storm effect function [message #315841 is a reply to message #315833] Wed, 06 February 2008 13:39 Go to previous messageGo to next message
reborn is currently offline  reborn
Messages: 3231
Registered: September 2004
Location: uk - london
Karma: 0
General (3 Stars)
R315r4z0r wrote on Wed, 06 February 2008 15:26

Is there anyway that the actual animation and emitters used as the "lightning" could be changed and modded to actual lightning? (As well as new sound effects)

I'm taking about in a mod like Reborn, where that sort of thing can actually be made into the game, rather than Renegade where the effects are already there.



Yes. Given the fact that reborn is a total conversion mod it could be done quite easily. Very Happy



Re: ion storm effect function [message #315842 is a reply to message #300900] Wed, 06 February 2008 13:43 Go to previous message
ExEric3 is currently offline  ExEric3
Messages: 746
Registered: February 2005
Location: Slovakia
Karma: 0
Colonel
OK a fixed it. Thanks guys.
Previous Topic: Tracer_green.w3d
Next Topic: Sounds ingame
Goto Forum:
  


Current Time: Sat Dec 28 06:47:03 MST 2024

Total time taken to generate the page: 0.01218 seconds