Zombie HORDE - The mappack project! (11 / r27) 14/12/2015

Maps, modifications, add-ons, projects, and other releases for Zandronum. Also includes announcers.
Mr.Man
Forum Regular
Posts: 657
Joined: Thu May 09, 2013 7:25 pm

RE: Zombie HORDE - The mappack project! (8a / r4)

#401

Post by Mr.Man » Sun May 26, 2013 7:21 am

Can't we/you make custom runes? Like perk-ish. For example, a rune that makes you run a bit faster. Not overpowered, but still usefull.

User avatar
fr blood
Frequent Poster Miles card holder
Posts: 995
Joined: Wed Mar 06, 2013 4:04 pm
Location: France

RE: Zombie HORDE - The mappack project! (8a / r4)

#402

Post by fr blood » Sun May 26, 2013 1:20 pm

I don't think new runes are needed, I think the only thing this mod need is more maps.

User avatar
fr blood
Frequent Poster Miles card holder
Posts: 995
Joined: Wed Mar 06, 2013 4:04 pm
Location: France

RE: Zombie HORDE - The mappack project! (8a / r4)

#403

Post by fr blood » Sun May 26, 2013 5:32 pm

OK all, here is a beta version of my map, I know it will need more detkals, but I jusk want all your opinion. For the time I've only added the weather event and the armory.

I've a big problem, some scripts work very nice at lan, but when I test the map in a custom server 10% of my scripts aren't doing what there are supposed to do, only on a server, I need help

( Don't add it in test pack plz )

here is the link : ZM14
Last edited by fr blood on Sun May 26, 2013 6:16 pm, edited 1 time in total.

User avatar
ibm5155
Addicted to Zandronum
Posts: 1641
Joined: Tue Jun 05, 2012 9:32 pm
Location: Somewhere, over the rainbow

RE: Zombie HORDE - The mappack project! (8a / r4)

#404

Post by ibm5155 » Sun May 26, 2013 5:55 pm

Well if I was going to add a new rune, I´ll only allow it to be used on my map (zm09) if you don´t die and the map changed, you´ll lose the rune

EDIT:The zm14 looks cool :D hmm but there´s just some doors (all on the spawn spot) that leave you outside the map sectors...
The rest I think it´s cool :D

EDIT2: I really like the weather effect, but I think the actual one is limited =/, so I created a new weather code :D

The code is clientside, and it´ll only affect places with fsky1 texture, the rain will spawn near from you and not from a fixed spot.
-There are settings for how good you want the rain effect (worse -> more fps, better -> less
[spoiler]Screenshot of the rain on ultra settings
Image[/spoiler]
The settings are:
LOW:Low distance rain, no sound
LOW-MEDIUM:Low distance rain, rain sound
MEDIUM:medium distance rain, rain sound
HIGH:high distance rain, rain sound
ULTRA:high distance, rain sound, 2x more rain in all area (used on the screenshot)
The new rain code have 200 lines of code and it´s independent of new mapspots and other things.
It´s really good on dark maps, I didn´t tested on bright maps but it may be good too.

I´ll post the test map latter to you guys test it :)
Last edited by ibm5155 on Mon May 27, 2013 1:41 am, edited 1 time in total.
Projects
Cursed Maze: DONE, V2.0
Zombie Horde - ZM09 map update: [3/15/13]
Need help with English? Then you've come to the right place!

<this post is proof of "Decline">

User avatar
fr blood
Frequent Poster Miles card holder
Posts: 995
Joined: Wed Mar 06, 2013 4:04 pm
Location: France

RE: Zombie HORDE - The mappack project! (8a / r4)

#405

Post by fr blood » Mon May 27, 2013 5:57 am

This new rain script looks cool, because when I launche the script to spawn water when the weather is rain, the problem is on a server, the property don't work with the actor that spawn rain, so it spawns rain with only 1 radius.

I've so many problems with the LAN/ONLINE.

User avatar
ibm5155
Addicted to Zandronum
Posts: 1641
Joined: Tue Jun 05, 2012 9:32 pm
Location: Somewhere, over the rainbow

RE: Zombie HORDE - The mappack project! (8a / r4)

#406

Post by ibm5155 » Wed May 29, 2013 12:00 am

http://www.mediafire.com/download/js3oa ... ETA8.4.pk3
Here´s an experimental rain effect on zm09, also I did an experiment on zm14 it it works perfect *__* (But the problem you´ll need to use the lowest settings because the map is a big open area, but it still cool :D)
Projects
Cursed Maze: DONE, V2.0
Zombie Horde - ZM09 map update: [3/15/13]
Need help with English? Then you've come to the right place!

<this post is proof of "Decline">

User avatar
fr blood
Frequent Poster Miles card holder
Posts: 995
Joined: Wed Mar 06, 2013 4:04 pm
Location: France

RE: Zombie HORDE - The mappack project! (8a / r4)

#407

Post by fr blood » Wed May 29, 2013 9:19 am

Does it work on a server too ? O_O

User avatar
ibm5155
Addicted to Zandronum
Posts: 1641
Joined: Tue Jun 05, 2012 9:32 pm
Location: Somewhere, over the rainbow

RE: Zombie HORDE - The mappack project! (8a / r4)

#408

Post by ibm5155 » Wed May 29, 2013 11:12 am

It should, but I didn't tested:s
also there isn't a huge fps drop with The rain on zm14 with low setings
Projects
Cursed Maze: DONE, V2.0
Zombie Horde - ZM09 map update: [3/15/13]
Need help with English? Then you've come to the right place!

<this post is proof of "Decline">

User avatar
fr blood
Frequent Poster Miles card holder
Posts: 995
Joined: Wed Mar 06, 2013 4:04 pm
Location: France

RE: Zombie HORDE - The mappack project! (8a / r4)

#409

Post by fr blood » Wed May 29, 2013 5:26 pm

Ok thank, I hope It will work, with that and small modification my map will be able to join the testpack.

User avatar
ibm5155
Addicted to Zandronum
Posts: 1641
Joined: Tue Jun 05, 2012 9:32 pm
Location: Somewhere, over the rainbow

RE: Zombie HORDE - The mappack project! (8a / r4)

#410

Post by ibm5155 » Wed May 29, 2013 6:41 pm

ZM14 code with rain add

Code: Select all

#import "ZMGAME.acs"
#include "zcommon.acs"

bool ArmoryOpen = FALSE;
bool GeneratorActivated = FALSE;
bool AManintheRoom = FALSE;
int weather=0;

Script 1 OPEN
{
SETFONT("SmallFont");
HudMessage(s:"This map got three keys, for secrets."; HUDMSG_FADEOUT, 0, CR_YELLOW, 0.5, 0.20, 8.0, 4.0);
HudMessage(s:"Secret event is random, with the weather, stay alarm."; HUDMSG_FADEOUT, 0, CR_YELLOW, 0.5, 0.22, 8.0, 4.0);
HudMessage(s:"This map was made by \cgblood"; HUDMSG_FADEOUT, 0, CR_YELLOW, 0.5, 0.24, 8.0, 4.0);
delay(35*5);
Thing_Move(84,random(220,222),1);
Thing_Move(85,random(223,224),1);
ACS_Execute(222,0,1);
sector_setColor(40,0,0,255);               
sector_setFade(40,0,0,255);
}

Script 6 (void) // Not accessible anymore
{
Print(s:"This door is sealed.");
ActivatorSound("DRLOCK2", 127);
delay(15);
}

Script 7 (void) // Not accessible anymore
{
Print(s:"This door is locked.");
ActivatorSound("DRLOCK2", 127);
delay(15);
}

Script 8 (void) // Item Room Open
{
PrintBold(s:"The item room is now open.");
Delay(1);
switch(random(1,2))
{
case 1:
Door_Open(31,80);
break;
case 2:
Door_Open(18,80);
break;
}
}

Script 9 (void) // Opening Armory
{
if(CheckInventory("RedSkull") == 0 &&  ArmoryOpen == FALSE ) 
{
Print(s:"You don't have the red skull key to open the armory.");
}
if(CheckInventory("RedSkull") == 1 &&  ArmoryOpen == FALSE ) 
{
ArmoryOpen = TRUE;
Print(s:"Red skull key used, the armory is now open.");
Floor_LowerbyValue(23,40,118);
delay(35*5);
setfont("BIGFONT");
PrintBold(s:"The Armory is now open !");
delay(35*5);
setfont("BIGFONT");
PrintBold(s:"Turn on generator to active the Teleporter.");
}
}

Script 10 (void) // Activing Generator
{
if(ArmoryOpen == FALSE ) 
{
Print(s:"Open the armory at first.");
}
if(CheckInventory("RedSkull") == 0 && GeneratorActivated == FALSE && ArmoryOpen == TRUE ) 
{
Print(s:"You don't have the red skull key to turn on generator.");
}
if(CheckInventory("RedSkull") == 1 &&  GeneratorActivated == FALSE && ArmoryOpen == TRUE ) 
{
GeneratorActivated = TRUE;
Print(s:"Red skull key used, the generator is activated.");
Floor_LowerbyValue(23,40,118);
delay(35*2);
Thing_Move(0,56,0);
ACS_ExecuteAlways(11,0,0,0,0);
}
}

Script 11 (void) // Armory activated !
{
GiveActorInventory(57,"Clip",random(3,7));
delay(35*5);
setfont("BIGFONT");
PrintBold(s:"The generator is On : <!> Warning <!> only ",d:CheckActorInventory(57, "Clip"),s:" players can take weapons from the armory !");
delay(35);
setfont("BIGFONT");
PrintBold(s:"The generator is On : <!> Warning <!> only ",d:CheckActorInventory(57, "Clip"),s:" players can take weapons from the armory !");
delay(35);
setfont("BIGFONT");
PrintBold(s:"The generator is On : <!> Warning <!> only ",d:CheckActorInventory(57, "Clip"),s:" players can take weapons from the armory !");
delay(35);
setfont("BIGFONT");
PrintBold(s:"The generator is On : <!> Warning <!> only ",d:CheckActorInventory(57, "Clip"),s:" players can take weapons from the armory !");
delay(35);
ACS_Execute(12,0,0,0,0);
Floor_LowerbyValue(55,40,118);
}

Script 12 (void)
{
 SetFont ("CONFONT");
  HudMessageBold(s:"Armory's batteries left :\ch ",d:CheckActorInventory(57, "Clip"),s:""; HUDMSG_FADEOUT, 78, CR_GOLD, 0.16, 0.16, 1.0, 1.0);
  Delay(25);
  restart;
}

Script 13 (void)
{
if(AManintheRoom == TRUE && CheckInventory("Wentinarmory") == 1 ) 
{
setfont("BIGFONT");
Print(s:"You already went into the armory's room !");
Thing_Move(0,63,0);
}
if(AManintheRoom == TRUE && CheckInventory("Wentinarmory") == 0 ) 
{
setfont("BIGFONT");
Print(s:"There is already someone in the armory's room ...");
Thing_Move(0,63,0);
}
if(AManintheRoom == FALSE && CheckInventory("zombiemaker") == 0 && CheckActorInventory(57,"Clip") == 0 && CheckInventory("Wentinarmory") == 0 ) 
{
setfont("BIGFONT");
Print(s:"The teleporter is off.");
}
if(AManintheRoom == FALSE && CheckInventory("zombiemaker") == 1 && CheckInventory("Wentinarmory") == 0 ) 
{
setfont("BIGFONT");
Print(s:"There are weapons in it, not brains !!!");
Thing_Move(0,63,0);
}
if(AManintheRoom == FALSE && CheckInventory("zombiemaker") == 0 && CheckActorInventory(57,"Clip") >= 1 && CheckInventory("Wentinarmory") == 0 ) 
{
AManintheRoom = TRUE;
GiveInventory("Wentinarmory",1);
Thing_Move(0,61,0);
SpawnSpotfacing("FakeJacksGun",59,18444);
SpawnSpotfacing("FakeDoubleShotgun",58,18444);
SpawnSpotfacing("FakeAutomaticRifle",60,18444);
Thing_SetSpecial(18444, 226, 14, 0, 0);
ACS_Execute(15,0,0,0,0);
}
}

Script 14 (void)
{
ACS_Terminate(15,0);
setfont("BIGFONT");
Print(s:"Weapon selected, returning to the map ...");
Thing_Remove(18444);
delay(35);
TakeActorInventory(57,"Clip",1);
Thing_Move(0,48,0);
AManintheRoom = FALSE;
}

Script 15 (void) // Armory activated !
{
setfont("BIGFONT");
Print(s:"You have 15 Secondes to select a weapon !");
delay(35*15);
Thing_Remove(18444);
Thing_Move(0,48,0);
TakeActorInventory(57,"Clip",1);
AManintheRoom = FALSE;
}

Script 16 OPEN // Waiting for the weather
{
delay(35*random(90,300));
setfont("BIGFONT");
PrintBold(s:"The Weather looks like strange, something will happen.");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"The Weather looks like strange, something will happen.");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"The Weather looks like strange, something will happen.");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"The Weather looks like strange, something will happen.");
delay(35*2);
ACS_Execute(17,0,random(1,5),0,0);
}

script 17 (int Typ)
{
//weather
if( Typ == 1)
{
SpawnSpotFacing("RaindropSpawnerS",353,1550);
Thing_SetSpecial(1550, 0, 255, 0, 0);
changesky("ICESKY","ICESKY");
Thing_Activate(62);
Sector_setfade(27,127,127,127);
Sector_setfade(2,127,127,127);
Sector_setfade(3,127,127,127);
Sector_setfade(4,127,127,127);
Sector_setfade(5,127,127,127);
Sector_setfade(6,127,127,127);
Sector_setfade(46,127,127,127);
Sector_setfade(45,127,127,127);
Sector_setfade(15,127,127,127);
Sector_setfade(49,127,127,127);
Sector_setfade(7,127,127,127);
Sector_setfade(17,127,127,127);
Sector_setfade(16,127,127,127);
Sector_setfade(18,127,127,127);
Sector_setfade(19,127,127,127);
Sector_setfade(14,127,127,127);
Sector_setfade(54,127,127,127);
Sector_setfade(25,127,127,127);
Sector_setfade(26,127,127,127);
Sector_setfade(27,127,127,127);
Sector_setfade(50,127,127,127);
Sector_setfade(38,127,127,127);
Sector_setfade(43,127,127,127);
Sector_setfade(44,127,127,127);
Sector_setfade(35,127,127,127);
Sector_setfade(34,127,127,127);
Sector_setfade(30,127,127,127);
Sector_setfade(31,127,127,127);
Sector_setfade(70,127,127,127);
Sector_setfade(71,127,127,127);
Sector_setfade(51,127,127,127);
Sector_setfade(37,127,127,127);
Sector_setfade(47,127,127,127);
Sector_setfade(26,127,127,127);
Sector_setfade(41,127,127,127);
Sector_setfade(72,127,127,127);
Sector_setfade(20,127,127,127);
Sector_setfade(23,127,127,127);
Sector_setfade(24,127,127,127);
Sector_setfade(21,127,127,127);
Sector_setfade(22,127,127,127);
Sector_setfade(55,127,127,127);
setfont("BIGFONT");
PrintBold(s:"\cu Here comes some rain with fog.");
delay(35*2);
weather=6;
setfont("BIGFONT");
PrintBold(s:"\cu Here comes some rain with fog.");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"\cu Here comes some rain with fog.");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"\cu Here comes some rain with fog.");
delay(35*2);
}
if( Typ == 2)
{
SpawnSpotFacing("RaindropSpawnerS",353,1550);
weather=6;
Thing_SetSpecial(1550, 0, 255, 0, 0);
changesky("ICESKY","ICESKY");
Thing_Activate(62);
ACS_Execute(31,0,0,0,0);
ACS_Execute(32,0,0,0,0);
setfont("BIGFONT");
PrintBold(s:"\ch Here comes some rain with thunders !");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"\ch Here comes some rain with thunders !");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"\ch Here comes some rain with thunders !");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"\ch Here comes some rain with thunders !");
delay(35*2);
}
if( Typ == 3)
{
changesky("TSKYA","TSKYA");
ACS_Execute(30,0,0,0,0);
setfont("BIGFONT");
PrintBold(s:"\cg watchout, it's a cataclism !");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"\cg watchout, it's a cataclism !");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"\cg watchout, it's a cataclism !");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"\cg watchout, it's a cataclism !");
delay(35*2);
}
if( Typ == 4)
{
changesky("STSKY8","STSKY8");
light_fade(27,150,70);
light_fade(2,150,70);
light_fade(3,150,70);
light_fade(4,150,70);
light_fade(5,150,70);
light_fade(6,150,70);
light_fade(46,150,70);
light_fade(45,150,70);
light_fade(15,150,70);
light_fade(49,150,70);
light_fade(7,150,70);
light_fade(17,150,70);
light_fade(16,150,70);
light_fade(18,150,70);
light_fade(19,150,70);
light_fade(14,150,70);
light_fade(54,150,70);
light_fade(25,150,70);
light_fade(26,150,70);
light_fade(27,150,70);
light_fade(50,150,70);
light_fade(38,150,70);
light_fade(43,150,70);
light_fade(44,150,70);
light_fade(35,150,70);
light_fade(34,150,70);
light_fade(30,150,70);
light_fade(31,150,70);
light_fade(70,150,70);
light_fade(71,150,70);
light_fade(51,150,70);
light_fade(37,150,70);
light_fade(47,150,70);
light_fade(26,150,70);
light_fade(41,150,70);
light_fade(72,150,70);
light_fade(20,150,70);
light_fade(23,150,70);
light_fade(24,150,70);
light_fade(21,150,70);
light_fade(22,150,70);
light_fade(55,150,70);
light_fade(67,150,70);
Sector_Setcolor(27,32,32,32);
Sector_Setcolor(2,32,32,32);
Sector_Setcolor(3,32,32,32);
Sector_Setcolor(4,32,32,32);
Sector_Setcolor(5,32,32,32);
Sector_Setcolor(6,32,32,32);
Sector_Setcolor(46,32,32,32);
Sector_Setcolor(45,32,32,32);
Sector_Setcolor(15,32,32,32);
Sector_Setcolor(49,32,32,32);
Sector_Setcolor(7,32,32,32);
Sector_Setcolor(17,32,32,32);
Sector_Setcolor(16,32,32,32);
Sector_Setcolor(18,32,32,32);
Sector_Setcolor(19,32,32,32);
Sector_Setcolor(14,32,32,32);
Sector_Setcolor(54,32,32,32);
Sector_Setcolor(25,32,32,32);
Sector_Setcolor(26,32,32,32);
Sector_Setcolor(27,32,32,32);
Sector_Setcolor(50,32,32,32);
Sector_Setcolor(38,32,32,32);
Sector_Setcolor(43,32,32,32);
Sector_Setcolor(44,32,32,32);
Sector_Setcolor(35,32,32,32);
Sector_Setcolor(34,32,32,32);
Sector_Setcolor(30,32,32,32);
Sector_Setcolor(31,32,32,32);
Sector_Setcolor(70,32,32,32);
Sector_Setcolor(71,32,32,32);
Sector_Setcolor(51,32,32,32);
Sector_Setcolor(37,32,32,32);
Sector_Setcolor(47,32,32,32);
Sector_Setcolor(26,32,32,32);
Sector_Setcolor(41,32,32,32);
Sector_Setcolor(72,32,32,32);
Sector_Setcolor(20,32,32,32);
Sector_Setcolor(23,32,32,32);
Sector_Setcolor(24,32,32,32);
Sector_Setcolor(21,32,32,32);
Sector_Setcolor(22,32,32,32);
Sector_Setcolor(55,32,32,32);
Sector_Setcolor(67,32,32,32);
Thing_Activate(65);
setfont("BIGFONT");
PrintBold(s:"\cm It's already the night, no one came back alive after a night here D: !");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"\cm It's already the night, no one came back alive after a night here D: !");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"\cm It's already the night, no one came back alive after a night here D: !");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"\cm It's already the night, no one came back alive after a night here D: !");
delay(35*2);
}
if( Typ == 5)
{
setfont("BIGFONT");
PrintBold(s:"\cm We said nothing, the weather stay calm");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"\cm We said nothing, the weather stay calm");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"\cm We said nothing, the weather stay calm");
delay(35*2);
setfont("BIGFONT");
PrintBold(s:"\cm We said nothing, the weather stay calm");
delay(35*2);
}
}

Script 222 (int iLine) {
	For(int i=100;i>=0;i-=5) {
		TranslucentLine(iLine,i);
		Delay(1);
	}
	SetLineBlocking(iLine,BLOCK_NOTHING);
}

Script 20 (void)
{
Thing_Damage(0,random(10,30),0);
if(CheckInventory("zombiemaker")) 
{
Thing_Damage(0,random(100,400),0);
}
Thing_Move(0,48,1);
}

Script 138 (void)
{
Acs_ExecuteAlways(164, 0, PlayerNumber(), 0, 0);
}

str cometname[4] = {"kgRandomCometA", "kgRandomCometB", "kgRandomCometC", "kgRandomCometD"};

Script 30 (void)
{
   delay(35*random(2,15));
   SpawnComet(random(0,4));
   restart;
}

function void SpawnComet(int num)
{
	SpawnSpot(cometname[num], 950 + num);
}

script 56 (void)
{
	AmbientSound("NUKE", 64);
	Radius_Quake(9, 35, 0, 255, 0);
	delay(35);
	Radius_Quake(4, 16, 0, 255, 0);
}

script 31 (void)
{
SpawnSpotFacing("ThunderGeneratorWhite",random(970,980),0);
delay(35*random(1,5));
SpawnSpotFacing("ThunderGeneratorBlue",random(970,980),0);
delay(35*random(1,5));
restart;
}

script 32 (void)
{
Delay(35*random(15,45));
SpawnSpotFacing("ThunderGeneratorWhite",66,0);
ACS_Execute(222,0,5);
setlinespecial(5,0,0,0,0,0,0);
AmbientSound("GLASSB", 128);
}

script 33 (void)
{
Delay(35*random(15,45));
SpawnSpotFacing("FireCrystalSpawn",68,0);
PrintBold(s:"A Meteor dropped something in the cave");
}


int weather_quality=0;
bool rain_sound=false;
int  rain_quality=0;
int  rain_detail=0;
script 47 enter clientside
{
    
    int z_heigh;
    int y_heigh;
    int x_heigh;
    int a=0,b=0,c=0,i=0,j=0;
    int MAX2;
    int tid=150;
    int x ;
    int y ;
    int z ;
    int old_z=z;
    int tid2=unusedTID(1000,2000);
    while(weather==0){ delay(1);
    }
    if(weather>=50 && weather<=80) terminate;
    HudMessagebold(s:"Rain setings are acessed doing crouch+use/open"; HUDMSG_FADEINOUT, 544, CR_UNTRANSLATED, 0.5, 0.5,15.1,0, 0.3);
    acs_execute(48,0,0,0,0);
    while(true){
       a=getactorx(0);
       b=getactory(0);
       c=getactorz(0);
       if(weather_quality==0)      MAX2=16;//LOW
       else if(weather_quality==1) MAX2=48;//MEDIUM
       else if(weather_quality==2) MAX2=167;//HIGH
       else if(weather_quality==3) MAX2=208;//ULTRA
       else if(weather_quality==4) MAX2=334;//EXTREME
       
       while(j<MAX2){
            //LOW
           if(i>=168) i=-1;
           if (i==-1)   { x_heigh=a+random(-50.0,50.0); y_heigh=b+random(-50.0,50.0);}
           else if(i==0){ x_heigh=a+random(0,400.0); y_heigh=b+random(0,400.0);}
           else if(i==1){ x_heigh=a+random(0,400.0); y_heigh=b-random(0,400.0);}
           else if(i==2){ x_heigh=a-random(0,400.0); y_heigh=b+random(0,400.0);}
           else if(i==3){ x_heigh=a-random(0,400.0); y_heigh=b-random(0,400.0);}
           else if(i==4){ x_heigh=a+random(400.0,900.0); y_heigh=b+random(400.0,900.0);}
           else if(i==5){ x_heigh=a+random(400.0,900.0); y_heigh=b-random(400.0,900.0);}
           else if(i==6){ x_heigh=a-random(400.0,900.0); y_heigh=b+random(400.0,900.0);}
           else if(i==7){ x_heigh=a-random(400.0,900.0); y_heigh=b-random(400.0,900.0);}
           else if(i==8){ x_heigh=a+random(0,400.0); y_heigh=b+random(400.0,900.0);}
           else if(i==9){ x_heigh=a-random(0,400.0); y_heigh=b+random(400.0,900.0);}
           else if(i==10){ x_heigh=a+random(0,400.0); y_heigh=b-random(400.0,900.0);}
           else if(i==11){ x_heigh=a-random(0,400.0); y_heigh=b-random(400.0,900.0);}
           else if(i==12){ x_heigh=a+random(400.0,900.0); y_heigh=b+random(0,400.0);}
           else if(i==13){ x_heigh=a+random(400.0,900.0); y_heigh=b-random(0,400.0);}
           else if(i==14){ x_heigh=a-random(400.0,900.0); y_heigh=b+random(0,400.0);}
           else if(i==15){ x_heigh=a-random(400.0,900.0); y_heigh=b-random(0,400.0);}
            //MEDIUM
           else if(i==16){ x_heigh=a+random(900.0,1400.0); y_heigh=b+random(900.0,1400.0);}
           else if(i==17){ x_heigh=a-random(900.0,1400.0); y_heigh=b+random(900.0,1400.0);}
           else if(i==18){ x_heigh=a+random(900.0,1400.0); y_heigh=b-random(900.0,1400.0);}
           else if(i==19){ x_heigh=a-random(900.0,1400.0); y_heigh=b-random(900.0,1400.0);}
           else if(i==20){ x_heigh=a+random(0,400.0); y_heigh=b+random(900.0,1400.0);}
           else if(i==21){ x_heigh=a-random(0,400.0); y_heigh=b+random(900.0,1400.0);}
           else if(i==22){ x_heigh=a+random(0,400.0); y_heigh=b-random(900.0,1400.0);}
           else if(i==23){ x_heigh=a-random(0,400.0); y_heigh=b-random(900.0,1400.0);}
           else if(i==24){ x_heigh=a+random(900.0,1400.0); y_heigh=b+random(400.0,900.0);}
           else if(i==25){ x_heigh=a-random(900.0,1400.0); y_heigh=b+random(400.0,900.0);}
           else if(i==26){ x_heigh=a+random(900.0,1400.0); y_heigh=b-random(400.0,900.0);}
           else if(i==27){ x_heigh=a-random(900.0,1400.0); y_heigh=b-random(400.0,900.0);}
           else if(i==28){ x_heigh=a+random(900.0,1400.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==29){ x_heigh=a-random(900.0,1400.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==30){ x_heigh=a+random(900.0,1400.0); y_heigh=b-random(1400.0,1900.0);}
           else if(i==31){ x_heigh=a-random(900.0,1400.0); y_heigh=b-random(1400.0,1900.0);}
           else if(i==32){ x_heigh=a+random(400.0,900.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==33){ x_heigh=a-random(400.0,900.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==34){ x_heigh=a+random(400.0,900.0); y_heigh=b-random(1400.0,1900.0);}
           else if(i==35){ x_heigh=a-random(400.0,900.0); y_heigh=b-random(1400.0,1900.0);}
           else if(i==36){ x_heigh=a+random(0,400.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==37){ x_heigh=a-random(0,400.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==38){ x_heigh=a+random(0,400.0); y_heigh=b-random(1400.0,1900.0);}
           else if(i==39){ x_heigh=a-random(0,400.0); y_heigh=b-random(1400.0,1900.0);}
           else if(i==40){ x_heigh=a+random(1400.0,1900.0); y_heigh=b+random(0,900.0);}
           else if(i==41){ x_heigh=a-random(1400.0,1900.0); y_heigh=b+random(0,900.0);}
           else if(i==42){ x_heigh=a+random(1400.0,1900.0); y_heigh=b-random(0,900.0);}
           else if(i==43){ x_heigh=a-random(1400.0,1900.0); y_heigh=b-random(0,900.0);}
           else if(i==44){ x_heigh=a+random(1400.0,1900.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==45){ x_heigh=a-random(1400.0,1900.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==46){ x_heigh=a+random(1400.0,1900.0); y_heigh=b-random(1400.0,1900.0);}
           else if(i==47){ x_heigh=a-random(1400.0,1900.0); y_heigh=b-random(1400.0,1900.0);}
           //HIGH
           if(i==48){ x_heigh=a+random(1300.0,2400.0); y_heigh=b+random(1900.0,2400.0);}
           else if(i==49){ x_heigh=a-random(1300.0,2400.0); y_heigh=b+random(1900.0,2400.0);}
           else if(i==50){ x_heigh=a+random(0,1300.0); y_heigh=b+random(1900.0,2400.0);}
           else if(i==51){ x_heigh=a-random(0,1300.0); y_heigh=b+random(1900.0,2400.0);}
           else if(i==52){ x_heigh=a+random(1300.0,2400.0); y_heigh=b-random(1900.0,2400.0);}
           else if(i==53){ x_heigh=a-random(1300.0,2400.0); y_heigh=b-random(1900.0,2400.0);}
           else if(i==54){ x_heigh=a+random(0,1300.0); y_heigh=b-random(1900.0,2400.0);}
           else if(i==55){ x_heigh=a-random(0,1300.0); y_heigh=b-random(1900.0,2400.0);}
           else if(i==56){ x_heigh=a+random(1900.0,2400.0); y_heigh=b+random(1267.0,1900.0);}
           else if(i==57){ x_heigh=a-random(1900.0,2400.0); y_heigh=b+random(1267.0,1900.0);}
           else if(i==58){ x_heigh=a+random(1900.0,2400.0); y_heigh=b+random(0,1267.0);}
           else if(i==59){ x_heigh=a-random(1900.0,2400.0); y_heigh=b+random(0,1267.0);}
           else if(i==60){ x_heigh=a+random(1900.0,2400.0); y_heigh=b-random(1267.0,1900.0);}
           else if(i==61){ x_heigh=a-random(1900.0,2400.0); y_heigh=b-random(1267.0,1900.0);}
           else if(i==62){ x_heigh=a+random(0,1300.0); y_heigh=b-random(0,1267.0);}
           else if(i==63){ x_heigh=a-random(0,1300.0); y_heigh=b-random(0,1267.0);}
           // IMPLEMENTAR O RESTO DEPOIS
            else if(i==64){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==65){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==66){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==67){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==68){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==69){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==70){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==71){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==72){ x_heigh=a+random(1900.0,2400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==73){ x_heigh=a+random(1900.0,2400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==74){ x_heigh=a-random(1900.0,2400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==75){ x_heigh=a-random(1900.0,2400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==76){ x_heigh=a+random(1400.0,1900.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==77){ x_heigh=a+random(1400.0,1900.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==78){ x_heigh=a-random(1400.0,1900.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==79){ x_heigh=a-random(1400.0,1900.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==80){ x_heigh=a+random(900.0,1400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==81){ x_heigh=a+random(900.0,1400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==82){ x_heigh=a-random(900.0,1400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==83){ x_heigh=a-random(900.0,1400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==84){ x_heigh=a+random(400.0,900.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==85){ x_heigh=a+random(400.0,900.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==86){ x_heigh=a-random(400.0,900.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==87){ x_heigh=a-random(400.0,900.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==88){ x_heigh=a+random(0,400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==89){ x_heigh=a+random(0,400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==90){ x_heigh=a-random(0,400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==91){ x_heigh=a-random(0,400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==92){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==93){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==93){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==94){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==95){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==96){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==97){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==98){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==99){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(1900.0,2400.0);}
            else if(i==100){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(1900.0,2400.0);}
            else if(i==101){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(1900.0,2400.0);}
            else if(i==102){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(1900.0,2400.0);}
            else if(i==103){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(1400.0,1900.0);}
            else if(i==104){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(1400.0,1900.0);}
            else if(i==105){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(1400.0,1900.0);}
            else if(i==106){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(1400.0,1900.0);}
            else if(i==107){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(900.0,1400.0);}
            else if(i==108){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(900.0,1400.0);}
            else if(i==109){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(900.0,1400.0);}
            else if(i==110){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(900.0,1400.0);}
            else if(i==111){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(400.0,900.0);}
            else if(i==112){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(400.0,900.0);}
            else if(i==113){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(400.0,900.0);}
            else if(i==114){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(400.0,900.0);}
            else if(i==115){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(0,400.0);}
            else if(i==116){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(0,400.0);}
            else if(i==117){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(0,400.0);}
            else if(i==118){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(0,400.0);}
            else if(i==119){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==120){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==121){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==122){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==123){ x_heigh=a+random(1900.0,2400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==124){ x_heigh=a+random(1900.0,2400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==125){ x_heigh=a-random(1900.0,2400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==126){ x_heigh=a-random(1900.0,2400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==127){ x_heigh=a+random(1400.0,1900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==128){ x_heigh=a+random(1400.0,1900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==129){ x_heigh=a-random(1400.0,1900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==130){ x_heigh=a-random(1400.0,1900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==131){ x_heigh=a+random(900.0,1400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==132){ x_heigh=a+random(900.0,1400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==133){ x_heigh=a-random(900.0,1400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==134){ x_heigh=a-random(900.0,1400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==135){ x_heigh=a+random(400.0,900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==136){ x_heigh=a+random(400.0,900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==137){ x_heigh=a-random(400.0,900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==138){ x_heigh=a-random(400.0,900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==139){ x_heigh=a+random(0,400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==140){ x_heigh=a+random(0,400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==141){ x_heigh=a-random(0,400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==142){ x_heigh=a-random(0,400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==143){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==144){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==145){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==146){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==147){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(1900.0,2400.0);}
            else if(i==148){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(1900.0,2400.0);}
            else if(i==149){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(1900.0,2400.0);}
            else if(i==150){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(1900.0,2400.0);}
            else if(i==151){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(1400.0,1900.0);}
            else if(i==152){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(1400.0,1900.0);}
            else if(i==153){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(1400.0,1900.0);}
            else if(i==154){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(1400.0,1900.0);}
            else if(i==155){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(900.0,1400.0);}
            else if(i==156){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(900.0,1400.0);}
            else if(i==157){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(900.0,1400.0);}
            else if(i==158){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(900.0,1400.0);}
            else if(i==159){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(400.0,900.0);}
            else if(i==160){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(400.0,900.0);}
            else if(i==161){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(400.0,900.0);}
            else if(i==162){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(400.0,900.0);}
            else if(i==163){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(0,400.0);}
            else if(i==164){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(0,400.0);}
            else if(i==165){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(0,400.0);}
            else if(i==166){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(0,400.0);}
           z_heigh=GetActorCeilingZ(0)-16.0;
           spawn("mapspot",x_heigh,y_heigh,z_heigh  ,tid,0);
           if (thingcount(t_none,tid)==0){ 
            spawn("mapspot",x_heigh,y_heigh,c+10.0  ,tid,0);
            if(thingcount(t_none,tid)==0){
                spawn("mapspot",x_heigh,y_heigh,GetSectorCeilingZ(0,x_heigh /1.0,y_heigh /1.0)-20.0,tid,0);
                
                if(thingcount(t_none,tid)==0){ 
                    spawn("mapspot",x_heigh,y_heigh,c+74.0  ,tid,0);
                    if(thingcount(t_none,tid)==0){
                        spawn("mapspot",x_heigh,y_heigh,c+274.0  ,tid,0);
                    }
                }
        }   }
           
           
           
           if (CheckActorCeilingTexture(tid, "F_SKY1")){    
                z_heigh=GetHigherCeiling(tid)-55.0;
                thing_remove(tid);
                spawn("mapspot",x_heigh,y_heigh,z_heigh,tid,0);
               // print(f:z_heigh,s:"\n",f:y_heigh,s:"\n",f:x_heigh,s:"\n",d:thingcount(t_none,tid));
                if(rain_sound==0){
                    if(rain_detail==0)spawnspot("raindrop",tid,0,0);
                    else if(rain_detail==1)spawnspot("raindrop2",tid,0,0);
                    else spawnspot("raindrop3",tid,0,0);
                }else{
                    if(rain_detail==0)spawnspot("raindrophq",tid,0,0);
                    else if(rain_detail==1)spawnspot("raindrop2hq",tid,0,0);
                    else spawnspot("raindrop3hq",tid,0,0);
                }
                
           }
           thing_remove(tid);
           //tid++;
           i++;
           j++;
       }
       tid=200;
       i=-1;
       j=0;
       delay(1);
       
    }

}

//int weather_quality=0;

script 48 (void) clientside{
    int menu=0;
    while(true){
        if(menu==0){
            if(GetPlayerInput(-1, INPUT_BUTTONS)==BT_CROUCH+BT_USE){
                menu=1;
                HudMessagebold(s:"Rain setting"; HUDMSG_PLAIN, 544, CR_UNTRANSLATED, 0.5, 0.44,0,0, 0);
                switch(weather_quality){
                    case 0:
                        HudMessagebold(s:">Rain Distance:LOW"; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 1:
                        HudMessagebold(s:"-Rain Distance:MEDIUM"; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 2:
                        HudMessagebold(s:"-Rain Distance:HIGH"; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 3:
                        HudMessagebold(s:"-Rain Distance:ULTRA"; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 4:
                        HudMessagebold(s:"-Rain Distance:EXTREME"; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
            }
            switch(rain_sound){
                    case 0:
                        HudMessagebold(s:"-Rain Sound:OFF"; HUDMSG_PLAIN, 546, CR_UNTRANSLATED, 0.5, 0.48,0,0, 0);
                        break;
                    case 1:
                        HudMessagebold(s:"-Rain Sound:ON"; HUDMSG_PLAIN, 546, CR_UNTRANSLATED, 0.5, 0.48,0,0, 0);
                        break;
            }
            switch(rain_detail){
                    case 0:
                        HudMessagebold(s:"-Rain Quality:LOW"; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                    case 1:
                        HudMessagebold(s:"-Rain Quality:MEDIUM"; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                    case 2:
                        HudMessagebold(s:"-Rain Quality:HIGH"; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                }
                HudMessagebold(s:"To exit the menu type your button to open doors"; HUDMSG_PLAIN, 548, CR_UNTRANSLATED, 0.5, 0.52,0,0, 0);
                activatorsound("menu/activate",127);
           
            }
        }
        else if(menu==-1){
            HudMessagebold(s:""; HUDMSG_PLAIN, 544, CR_UNTRANSLATED, 0.5, 0.5,15.1,0, 0);
                HudMessagebold(s:""; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.48,15.1,0, 0);
                HudMessagebold(s:""; HUDMSG_PLAIN, 546, CR_UNTRANSLATED, 0.5, 0.46,15.1,0, 0);
                HudMessagebold(s:""; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.44, 0.5,15.1,0, 0);
                HudMessagebold(s:""; HUDMSG_PLAIN, 548, CR_UNTRANSLATED, 0.52, 0.44,0,0, 0);
                activatorsound("menu/choose",127);
                menu=0;
        }
        else{
            HudMessagebold(s:"Rain setting"; HUDMSG_PLAIN, 544, CR_UNTRANSLATED, 0.5, 0.44,0,0, 0);
            switch(weather_quality){
                    case 0:
                        HudMessagebold(s:"-Rain Distance:LOW"; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 1:
                        HudMessagebold(s:"-Rain Distance:MEDIUM"; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 2:
                        HudMessagebold(s:"-Rain Distance:HIGH"; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 3:
                        HudMessagebold(s:"-Rain Distance:ULTRA"; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 4:
                        HudMessagebold(s:"-Rain Distance:EXTREME"; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
            }
            switch(rain_sound){
                    case 0:
                        HudMessagebold(s:"-Rain Sound:OFF"; HUDMSG_PLAIN, 546, CR_UNTRANSLATED, 0.5, 0.48,0,0, 0);
                        break;
                    case 1:
                        HudMessagebold(s:"-Rain Sound:ON"; HUDMSG_PLAIN, 546, CR_UNTRANSLATED, 0.5, 0.48,0,0, 0);
                        break;
            }
            switch(rain_detail){
                    case 0:
                        HudMessagebold(s:"-Rain Quality:LOW"; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                    case 1:
                        HudMessagebold(s:"-Rain Quality:MEDIUM"; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                    case 2:
                        HudMessagebold(s:"-Rain Quality:HIGH"; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                }
           
            HudMessagebold(s:"To exit the menu type your button to open doors"; HUDMSG_PLAIN, 548, CR_UNTRANSLATED, 0.5, 0.52,0,0, 0);
        }
        if(menu==1){
            while(menu==1){
                                switch(weather_quality){
                    case 0:
                        HudMessagebold(s:">Rain Distance:LOW"; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 1:
                        HudMessagebold(s:">Rain Distance:MEDIUM"; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 2:
                        HudMessagebold(s:">Rain Distance:HIGH"; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 3:
                        HudMessagebold(s:">Rain Distance:ULTRA"; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 4:
                        HudMessagebold(s:">Rain Distance:EXTREME"; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                                }
                if(GetPlayerInput(-1, INPUT_BUTTONS)==BT_LEFT){
                    weather_quality--;
                    if(weather_quality==-1) weather_quality=0;
                    activatorsound("menu/change",127);
                    delay(14);
                }
                else if(GetPlayerInput(-1, INPUT_BUTTONS)==BT_RIGHT){
                    weather_quality++;
                    if(weather_quality==5) weather_quality=4;
                    activatorsound("menu/change",127);
                    delay(14);
                }
                else if(GetPlayerInput(-1, INPUT_BUTTONS)==BT_BACK){
                    menu=2;
                    activatorsound("menu/cursor",127);
                }
                else if(GetPlayerInput(-1, INPUT_BUTTONS)==BT_USE) menu=-1;
                delay(1);
            }
            delay(15);
        }
        else if(menu==2){
            while(menu==2){
                switch(rain_sound){
                    case 0:
                        HudMessagebold(s:">Rain Sound:OFF"; HUDMSG_PLAIN, 546, CR_UNTRANSLATED, 0.5, 0.48,0,0, 0);
                        break;
                    case 1:
                        HudMessagebold(s:">Rain Sound:ON"; HUDMSG_PLAIN, 546, CR_UNTRANSLATED, 0.5, 0.48,0,0, 0);
                        break;
            }
                if(GetPlayerInput(-1, INPUT_BUTTONS)==BT_LEFT){
                    if(rain_sound==1) rain_sound=0;
                    activatorsound("menu/change",127);
                    delay(14);
                }
                else if(GetPlayerInput(-1, INPUT_BUTTONS)==BT_RIGHT){
                    if(rain_sound==0) rain_sound=1;
                    activatorsound("menu/change",127);
                    delay(14);
                }
                else if(GetPlayerInput(-1, INPUT_BUTTONS)==BT_BACK){
                    menu=3;
                    activatorsound("menu/cursor",127);
                }
                else if(GetPlayerInput(-1, INPUT_BUTTONS)==BT_FORWARD){
                    menu=1;
                    activatorsound("menu/cursor",127);
                }
                else if(GetPlayerInput(-1, INPUT_BUTTONS)==BT_USE) menu=-1;
                delay(1);
            }
            delay(15);
        }
        else if(menu==3){
            while(menu==3){
                switch(rain_detail){
                    case 0:
                        HudMessagebold(s:">Rain Quality:LOW"; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                    case 1:
                        HudMessagebold(s:">Rain Quality:MEDIUM"; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                    case 2:
                        HudMessagebold(s:">Rain Quality:HIGH"; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                }
                if(GetPlayerInput(-1, INPUT_BUTTONS)==BT_LEFT){
                    rain_detail--;
                    if(rain_detail==-1) rain_detail=0;
                    activatorsound("menu/change",127);
                    delay(14);
                }
                else if(GetPlayerInput(-1, INPUT_BUTTONS)==BT_RIGHT){
                    rain_detail++;
                    if(rain_detail==3) rain_detail=2;
                    activatorsound("menu/change",127);
                    delay(14);
                }
                else if(GetPlayerInput(-1, INPUT_BUTTONS)==BT_FORWARD){
                    menu=2;
                    activatorsound("menu/cursor",127);
                }
                else if(GetPlayerInput(-1, INPUT_BUTTONS)==BT_USE) menu=-1;
                delay(1);
            }
            delay(15);
        }
        delay(1);
    }
}

function int unusedTID(int start, int end)
{
    int ret = start - 1;
    int tidNum;

    if (start > end) { start ^= end; end ^= start; start ^= end; }  // good ol' XOR swap
    
    while (ret++ != end)
    {   
        if (ThingCount(0, ret) == 0)
        {   
            return ret;
        }   
    }   
    
    return -1; 
}



function int GetHigherCeiling(int tid2) {
    
   int posx=getactorx(tid2);
    int posy=getactory(tid2);
    int posz=GetActorCeilingZ(tid2);//504
    int z=posz+25.0;
    int test=0;
    int tid=unusedTID(1000, 2000);
    //print(s:"inicio:",f:posz);//800
    spawn("mapspot",posx,posy,z,tid,0);
    while(GetActorCeilingZ(tid)!=0){
        z=z+25.0;//850.0
        thing_remove(tid);
        spawn("mapspot",posx,posy,z,tid,0);
        test++;
    }if(test==0){
        thing_remove(tid);
        z=posz;
    }else{
        thing_remove(tid);
        spawn("mapspot",posx,posy,z-27.0,tid,0);
        z=GetActorCeilingZ(tid);
        thing_remove(tid);
        
    }//print(s:"loop:", d:test,s:"final:",f:z);
    return z;
}
Typ the rain code is big, but it´s working, and I need a better plan for optizating the code :B (also I discovered that there´s an limit of using if (119 else ifs with one if)

EDIT:don´t use that, it doesn´t work online '-'
Last edited by ibm5155 on Wed May 29, 2013 8:19 pm, edited 1 time in total.
Projects
Cursed Maze: DONE, V2.0
Zombie Horde - ZM09 map update: [3/15/13]
Need help with English? Then you've come to the right place!

<this post is proof of "Decline">

User avatar
fr blood
Frequent Poster Miles card holder
Posts: 995
Joined: Wed Mar 06, 2013 4:04 pm
Location: France

RE: Zombie HORDE - The mappack project! (8a / r4)

#411

Post by fr blood » Fri May 31, 2013 5:47 am

Thanks for this amazing work, does it all do for the rain or i've to change something ?

User avatar
ibm5155
Addicted to Zandronum
Posts: 1641
Joined: Tue Jun 05, 2012 9:32 pm
Location: Somewhere, over the rainbow

RE: Zombie HORDE - The mappack project! (8a / r4)

#412

Post by ibm5155 » Fri May 31, 2013 3:49 pm

I did an updated code, It´ll works online now :D but you need to put some ambientsounds on the map '-'
It´s easy
on the new code of your map when your rain script is actived just do this : weather=6; and the rain script will start

EDIT:the ambientsound is for the rain sound since the sound played on each thing was crashing the sound buffer :s
I´ll post an updated version of zm09 and a Example of zm14 with this code (If you want I did a radius script, it´s simple to apply to the map, just go to the sector and select indoor lighting or outdor lighting :) )

EDIT2:
ZM09 UPDATED (NOW NEDM is fixed \o/) download link
-New musics (less file size)
-New weather effect
-Some areas reworked...

How to use the rain effect on the map (udated:
first:you need the ambient sound 58 or 57 on the places that could rain (57 is a high distance and 58 a lower distance sound)
second:the ambient sound 58 and 57 should have the tag 144 (or another if you modify the rain code)
third:you need a open or enter script to disable the ambient sound when the map start, use the thing_deactivate(144) to disable it.
fourth:to the rain start do this comand:"acs_execute(47,0,0,0,0);" on the script that will start the rain.
fifth: copy this code to your map/mod

Code: Select all

script 47 (void) clientside
{
    
    int z_heigh;
    int y_heigh;
    int x_heigh;
    int a=0,b=0,c=0,i=0,j=0;
    int MAX2;
    int tid=150;
    int x ;
    int y ;
    int z ;
    int old_z=z;
    int tid2=unusedTID(1000,2000);
    int player_tid2;
    player_tid2=consoleplayernumber()+PLAYER_TID;
    acs_execute(48,0,0,0,0);
    HudMessagebold(s:"Rain setings are acessed doing crouch+use/open"; HUDMSG_FADEINOUT, 544, CR_UNTRANSLATED, 0.5, 0.5,15.1,0, 0.3);
 while(true){
       // print(s:"X:",f:a, s:"\nY:",f:b,s:"\nZ:",f:c, s:"\nactor ceiling:",f:GetActorCeilingZ(player_tid), s:"\nplayer tid:",d:player_tid);
       a=getactorx(player_tid2);//getactorx(ConsolePlayerNumber());
       b=getactory(player_tid2);//getactory(ConsolePlayerNumber());
       c=getactorz(player_tid2);//getactorz(ConsolePlayerNumber());
       
       if(weather_quality==0)      MAX2=16;//LOW
       else if(weather_quality==1) MAX2=48;//MEDIUM
       else if(weather_quality==2) MAX2=167;//HIGH
       else if(weather_quality==3) MAX2=208;//ULTRA
       else if(weather_quality==4) MAX2=334;//EXTREME
       
       while(j<MAX2){
            //LOW
           if(i>=168) i=-1;
           if (i==-1)   { x_heigh=a+random(-50.0,50.0); y_heigh=b+random(-50.0,50.0);}
           else if(i==0){ x_heigh=a+random(0,400.0); y_heigh=b+random(0,400.0);}
           else if(i==1){ x_heigh=a+random(0,400.0); y_heigh=b-random(0,400.0);}
           else if(i==2){ x_heigh=a-random(0,400.0); y_heigh=b+random(0,400.0);}
           else if(i==3){ x_heigh=a-random(0,400.0); y_heigh=b-random(0,400.0);}
           else if(i==4){ x_heigh=a+random(400.0,900.0); y_heigh=b+random(400.0,900.0);}
           else if(i==5){ x_heigh=a+random(400.0,900.0); y_heigh=b-random(400.0,900.0);}
           else if(i==6){ x_heigh=a-random(400.0,900.0); y_heigh=b+random(400.0,900.0);}
           else if(i==7){ x_heigh=a-random(400.0,900.0); y_heigh=b-random(400.0,900.0);}
           else if(i==8){ x_heigh=a+random(0,400.0); y_heigh=b+random(400.0,900.0);}
           else if(i==9){ x_heigh=a-random(0,400.0); y_heigh=b+random(400.0,900.0);}
           else if(i==10){ x_heigh=a+random(0,400.0); y_heigh=b-random(400.0,900.0);}
           else if(i==11){ x_heigh=a-random(0,400.0); y_heigh=b-random(400.0,900.0);}
           else if(i==12){ x_heigh=a+random(400.0,900.0); y_heigh=b+random(0,400.0);}
           else if(i==13){ x_heigh=a+random(400.0,900.0); y_heigh=b-random(0,400.0);}
           else if(i==14){ x_heigh=a-random(400.0,900.0); y_heigh=b+random(0,400.0);}
           else if(i==15){ x_heigh=a-random(400.0,900.0); y_heigh=b-random(0,400.0);}
            //MEDIUM
           else if(i==16){ x_heigh=a+random(900.0,1400.0); y_heigh=b+random(900.0,1400.0);}
           else if(i==17){ x_heigh=a-random(900.0,1400.0); y_heigh=b+random(900.0,1400.0);}
           else if(i==18){ x_heigh=a+random(900.0,1400.0); y_heigh=b-random(900.0,1400.0);}
           else if(i==19){ x_heigh=a-random(900.0,1400.0); y_heigh=b-random(900.0,1400.0);}
           else if(i==20){ x_heigh=a+random(0,400.0); y_heigh=b+random(900.0,1400.0);}
           else if(i==21){ x_heigh=a-random(0,400.0); y_heigh=b+random(900.0,1400.0);}
           else if(i==22){ x_heigh=a+random(0,400.0); y_heigh=b-random(900.0,1400.0);}
           else if(i==23){ x_heigh=a-random(0,400.0); y_heigh=b-random(900.0,1400.0);}
           else if(i==24){ x_heigh=a+random(900.0,1400.0); y_heigh=b+random(400.0,900.0);}
           else if(i==25){ x_heigh=a-random(900.0,1400.0); y_heigh=b+random(400.0,900.0);}
           else if(i==26){ x_heigh=a+random(900.0,1400.0); y_heigh=b-random(400.0,900.0);}
           else if(i==27){ x_heigh=a-random(900.0,1400.0); y_heigh=b-random(400.0,900.0);}
           else if(i==28){ x_heigh=a+random(900.0,1400.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==29){ x_heigh=a-random(900.0,1400.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==30){ x_heigh=a+random(900.0,1400.0); y_heigh=b-random(1400.0,1900.0);}
           else if(i==31){ x_heigh=a-random(900.0,1400.0); y_heigh=b-random(1400.0,1900.0);}
           else if(i==32){ x_heigh=a+random(400.0,900.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==33){ x_heigh=a-random(400.0,900.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==34){ x_heigh=a+random(400.0,900.0); y_heigh=b-random(1400.0,1900.0);}
           else if(i==35){ x_heigh=a-random(400.0,900.0); y_heigh=b-random(1400.0,1900.0);}
           else if(i==36){ x_heigh=a+random(0,400.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==37){ x_heigh=a-random(0,400.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==38){ x_heigh=a+random(0,400.0); y_heigh=b-random(1400.0,1900.0);}
           else if(i==39){ x_heigh=a-random(0,400.0); y_heigh=b-random(1400.0,1900.0);}
           else if(i==40){ x_heigh=a+random(1400.0,1900.0); y_heigh=b+random(0,900.0);}
           else if(i==41){ x_heigh=a-random(1400.0,1900.0); y_heigh=b+random(0,900.0);}
           else if(i==42){ x_heigh=a+random(1400.0,1900.0); y_heigh=b-random(0,900.0);}
           else if(i==43){ x_heigh=a-random(1400.0,1900.0); y_heigh=b-random(0,900.0);}
           else if(i==44){ x_heigh=a+random(1400.0,1900.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==45){ x_heigh=a-random(1400.0,1900.0); y_heigh=b+random(1400.0,1900.0);}
           else if(i==46){ x_heigh=a+random(1400.0,1900.0); y_heigh=b-random(1400.0,1900.0);}
           else if(i==47){ x_heigh=a-random(1400.0,1900.0); y_heigh=b-random(1400.0,1900.0);}
           //HIGH
           if(i==48){ x_heigh=a+random(1300.0,2400.0); y_heigh=b+random(1900.0,2400.0);}
           else if(i==49){ x_heigh=a-random(1300.0,2400.0); y_heigh=b+random(1900.0,2400.0);}
           else if(i==50){ x_heigh=a+random(0,1300.0); y_heigh=b+random(1900.0,2400.0);}
           else if(i==51){ x_heigh=a-random(0,1300.0); y_heigh=b+random(1900.0,2400.0);}
           else if(i==52){ x_heigh=a+random(1300.0,2400.0); y_heigh=b-random(1900.0,2400.0);}
           else if(i==53){ x_heigh=a-random(1300.0,2400.0); y_heigh=b-random(1900.0,2400.0);}
           else if(i==54){ x_heigh=a+random(0,1300.0); y_heigh=b-random(1900.0,2400.0);}
           else if(i==55){ x_heigh=a-random(0,1300.0); y_heigh=b-random(1900.0,2400.0);}
           else if(i==56){ x_heigh=a+random(1900.0,2400.0); y_heigh=b+random(1267.0,1900.0);}
           else if(i==57){ x_heigh=a-random(1900.0,2400.0); y_heigh=b+random(1267.0,1900.0);}
           else if(i==58){ x_heigh=a+random(1900.0,2400.0); y_heigh=b+random(0,1267.0);}
           else if(i==59){ x_heigh=a-random(1900.0,2400.0); y_heigh=b+random(0,1267.0);}
           else if(i==60){ x_heigh=a+random(1900.0,2400.0); y_heigh=b-random(1267.0,1900.0);}
           else if(i==61){ x_heigh=a-random(1900.0,2400.0); y_heigh=b-random(1267.0,1900.0);}
           else if(i==62){ x_heigh=a+random(0,1300.0); y_heigh=b-random(0,1267.0);}
           else if(i==63){ x_heigh=a-random(0,1300.0); y_heigh=b-random(0,1267.0);}
            else if(i==64){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==65){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==66){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==67){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==68){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==69){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==70){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==71){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==72){ x_heigh=a+random(1900.0,2400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==73){ x_heigh=a+random(1900.0,2400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==74){ x_heigh=a-random(1900.0,2400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==75){ x_heigh=a-random(1900.0,2400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==76){ x_heigh=a+random(1400.0,1900.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==77){ x_heigh=a+random(1400.0,1900.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==78){ x_heigh=a-random(1400.0,1900.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==79){ x_heigh=a-random(1400.0,1900.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==80){ x_heigh=a+random(900.0,1400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==81){ x_heigh=a+random(900.0,1400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==82){ x_heigh=a-random(900.0,1400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==83){ x_heigh=a-random(900.0,1400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==84){ x_heigh=a+random(400.0,900.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==85){ x_heigh=a+random(400.0,900.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==86){ x_heigh=a-random(400.0,900.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==87){ x_heigh=a-random(400.0,900.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==88){ x_heigh=a+random(0,400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==89){ x_heigh=a+random(0,400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==90){ x_heigh=a-random(0,400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==91){ x_heigh=a-random(0,400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==92){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==93){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==93){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(2900.0,3400.0);}
            else if(i==94){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(2900.0,3400.0);}
            else if(i==95){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==96){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==97){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==98){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==99){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(1900.0,2400.0);}
            else if(i==100){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(1900.0,2400.0);}
            else if(i==101){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(1900.0,2400.0);}
            else if(i==102){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(1900.0,2400.0);}
            else if(i==103){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(1400.0,1900.0);}
            else if(i==104){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(1400.0,1900.0);}
            else if(i==105){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(1400.0,1900.0);}
            else if(i==106){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(1400.0,1900.0);}
            else if(i==107){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(900.0,1400.0);}
            else if(i==108){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(900.0,1400.0);}
            else if(i==109){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(900.0,1400.0);}
            else if(i==110){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(900.0,1400.0);}
            else if(i==111){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(400.0,900.0);}
            else if(i==112){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(400.0,900.0);}
            else if(i==113){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(400.0,900.0);}
            else if(i==114){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(400.0,900.0);}
            else if(i==115){ x_heigh=a+random(2900.0,3400.0); y_heigh=b+random(0,400.0);}
            else if(i==116){ x_heigh=a+random(2900.0,3400.0); y_heigh=b-random(0,400.0);}
            else if(i==117){ x_heigh=a-random(2900.0,3400.0); y_heigh=b+random(0,400.0);}
            else if(i==118){ x_heigh=a-random(2900.0,3400.0); y_heigh=b-random(0,400.0);}
            else if(i==119){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==120){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==121){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==122){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==123){ x_heigh=a+random(1900.0,2400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==124){ x_heigh=a+random(1900.0,2400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==125){ x_heigh=a-random(1900.0,2400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==126){ x_heigh=a-random(1900.0,2400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==127){ x_heigh=a+random(1400.0,1900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==128){ x_heigh=a+random(1400.0,1900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==129){ x_heigh=a-random(1400.0,1900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==130){ x_heigh=a-random(1400.0,1900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==131){ x_heigh=a+random(900.0,1400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==132){ x_heigh=a+random(900.0,1400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==133){ x_heigh=a-random(900.0,1400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==134){ x_heigh=a-random(900.0,1400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==135){ x_heigh=a+random(400.0,900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==136){ x_heigh=a+random(400.0,900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==137){ x_heigh=a-random(400.0,900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==138){ x_heigh=a-random(400.0,900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==139){ x_heigh=a+random(0,400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==140){ x_heigh=a+random(0,400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==141){ x_heigh=a-random(0,400.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==142){ x_heigh=a-random(0,400.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==143){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==144){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==145){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(2400.0,2900.0);}
            else if(i==146){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(2400.0,2900.0);}
            else if(i==147){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(1900.0,2400.0);}
            else if(i==148){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(1900.0,2400.0);}
            else if(i==149){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(1900.0,2400.0);}
            else if(i==150){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(1900.0,2400.0);}
            else if(i==151){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(1400.0,1900.0);}
            else if(i==152){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(1400.0,1900.0);}
            else if(i==153){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(1400.0,1900.0);}
            else if(i==154){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(1400.0,1900.0);}
            else if(i==155){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(900.0,1400.0);}
            else if(i==156){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(900.0,1400.0);}
            else if(i==157){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(900.0,1400.0);}
            else if(i==158){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(900.0,1400.0);}
            else if(i==159){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(400.0,900.0);}
            else if(i==160){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(400.0,900.0);}
            else if(i==161){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(400.0,900.0);}
            else if(i==162){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(400.0,900.0);}
            else if(i==163){ x_heigh=a+random(2400.0,2900.0); y_heigh=b+random(0,400.0);}
            else if(i==164){ x_heigh=a+random(2400.0,2900.0); y_heigh=b-random(0,400.0);}
            else if(i==165){ x_heigh=a-random(2400.0,2900.0); y_heigh=b+random(0,400.0);}
            else if(i==166){ x_heigh=a-random(2400.0,2900.0); y_heigh=b-random(0,400.0);}
           z_heigh=GetActorCeilingZ(PLAYER_TID + PlayerNumber())-16.0;
           spawn("mapspot",x_heigh,y_heigh,z_heigh  ,tid,0);
           if (thingcount(t_none,tid)==0){ 
            spawn("mapspot",x_heigh,y_heigh,c+10.0  ,tid,0);
            if(thingcount(t_none,tid)==0){
                spawn("mapspot",x_heigh,y_heigh,GetSectorCeilingZ(0,x_heigh /1.0,y_heigh /1.0)-20.0,tid,0);
                
                if(thingcount(t_none,tid)==0){ 
                    spawn("mapspot",x_heigh,y_heigh,c+74.0  ,tid,0);
                    if(thingcount(t_none,tid)==0){
                        spawn("mapspot",x_heigh,y_heigh,c+274.0  ,tid,0);
                    }
                }
        }   }
           
           
           
           if (CheckActorCeilingTexture(tid, "F_SKY1")){    
                z_heigh=GetHigherCeiling(tid)-55.0;
                thing_remove(tid);
                spawn("mapspot",x_heigh,y_heigh,z_heigh,tid,0);
               // print(f:z_heigh,s:"\n",f:y_heigh,s:"\n",f:x_heigh,s:"\n",d:thingcount(t_none,tid));
                if(rain_detail==0)spawnspot("raindrop",tid,0,0);
                else if(rain_detail==1)spawnspot("raindrop2",tid,0,0);
                else spawnspot("raindrop3",tid,0,0);
                
           }
           thing_remove(tid);
           //tid++;
           i++;
           j++;
       }
       tid=200;
       i=-1;
       j=0;
       delay(1);
       
    }

}

//int weather_quality=0;

script 48 (void) clientside{
    int menu=0;
    while(true){
        if(menu==0){
            //print(d:player_tid,s:"\n",d:playernumber(),s:"\n",d:consoleplayernumber());
            if(GetPlayerInput(consoleplayernumber(), INPUT_BUTTONS)==BT_CROUCH+BT_USE){
                menu=1;
                HudMessagebold(s:"Rain setting"; HUDMSG_PLAIN, 544, CR_UNTRANSLATED, 0.5, 0.44,0,0, 0);
                switch(weather_quality){
                    case 0:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Distance:LOW      "; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 1:
                        SETFONT("SMALLFONT"); 
                        HudMessagebold(s:"-Rain Distance:MEDIUM   "; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 2:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Distance:HIGH    "; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 3:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Distance:ULTRA    "; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 4:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Distance:EXTREME "; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
            }
            switch(rain_sound){
                    case 0:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Sound:OFF          "; HUDMSG_PLAIN, 546, CR_UNTRANSLATED, 0.5, 0.48,0,0, 0);
                        break;
                    case 1:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Sound:ON           "; HUDMSG_PLAIN, 546, CR_UNTRANSLATED, 0.5, 0.48,0,0, 0);
                        break;
            }
            switch(rain_detail){
                    case 0:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Quality:LOW       "; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                    case 1:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Quality:MEDIUM   "; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                    case 2:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Quality:HIGH      "; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                }
                SETFONT("SMALLFONT");
                HudMessagebold(s:"To exit the menu type your button to open doors"; HUDMSG_PLAIN, 548, CR_UNTRANSLATED, 0.5, 0.52,0,0, 0);
                activatorsound("menu/activate",127);
           
            }
        }
        else if(menu==-1){
                SETFONT("SMALLFONT");
                HudMessagebold(s:""; HUDMSG_PLAIN, 544, CR_UNTRANSLATED, 0.5, 0.5,15.1,0, 0);
                HudMessagebold(s:""; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.48,15.1,0, 0);
                HudMessagebold(s:""; HUDMSG_PLAIN, 546, CR_UNTRANSLATED, 0.5, 0.46,15.1,0, 0);
                HudMessagebold(s:""; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.44, 0.5,15.1,0, 0);
                HudMessagebold(s:""; HUDMSG_PLAIN, 548, CR_UNTRANSLATED, 0.52, 0.44,0,0, 0);
                activatorsound("menu/choose",127);
                menu=0;
        }
        else{
            SETFONT("SMALLFONT");
            HudMessagebold(s:"Rain setting"; HUDMSG_PLAIN, 544, CR_UNTRANSLATED, 0.5, 0.44,0,0, 0);
            switch(weather_quality){
                    case 0:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Distance:LOW      "; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 1:
                        SETFONT("SMALLFONT"); 
                        HudMessagebold(s:"-Rain Distance:MEDIUM   "; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 2:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Distance:HIGH    "; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 3:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Distance:ULTRA    "; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 4:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Distance:EXTREME "; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
            }
            switch(rain_sound){
                    case 0:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Sound:OFF          "; HUDMSG_PLAIN, 546, CR_UNTRANSLATED, 0.5, 0.48,0,0, 0);
                        break;
                    case 1:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Sound:ON           "; HUDMSG_PLAIN, 546, CR_UNTRANSLATED, 0.5, 0.48,0,0, 0);
                        break;
            }
            switch(rain_detail){
                    case 0:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Quality:LOW       "; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                    case 1:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Quality:MEDIUM   "; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                    case 2:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:"-Rain Quality:HIGH      "; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                }
            SETFONT("SMALLFONT");
            HudMessagebold(s:"To exit the menu type your button to open doors"; HUDMSG_PLAIN, 548, CR_UNTRANSLATED, 0.5, 0.52,0,0, 0);
        }
        if(menu==1){
            while(menu==1){
                                switch(weather_quality){
                    case 0:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:">Rain Distance:LOW      "; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 1:
                        SETFONT("SMALLFONT"); 
                        HudMessagebold(s:">Rain Distance:MEDIUM   "; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 2:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:">Rain Distance:HIGH    "; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 3:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:">Rain Distance:ULTRA    "; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                    case 4:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:">Rain Distance:EXTREME "; HUDMSG_PLAIN, 545, CR_UNTRANSLATED, 0.5, 0.46,0,0, 0);
                        break;
                                }
                if(GetPlayerInput(ConsolePlayerNumber(), INPUT_BUTTONS)==BT_LEFT){
                    weather_quality--;
                    if(weather_quality==-1) weather_quality=0;
                    activatorsound("menu/change",127);
                    delay(14);
                }
                else if(GetPlayerInput(ConsolePlayerNumber(), INPUT_BUTTONS)==BT_RIGHT){
                    weather_quality++;
                    if(weather_quality==5) weather_quality=4;
                    activatorsound("menu/change",127);
                    delay(5);
                }
                else if(GetPlayerInput(ConsolePlayerNumber(), INPUT_BUTTONS)==BT_BACK){
                    menu=2;
                    activatorsound("menu/cursor",127);
                }
                else if(GetPlayerInput(ConsolePlayerNumber(), INPUT_BUTTONS)==BT_USE) menu=-1;
                delay(1);
            }
            delay(5);
        }
        else if(menu==2){
            while(menu==2){
                switch(rain_sound){
                    case 0:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:">Rain Sound:OFF          "; HUDMSG_PLAIN, 546, CR_UNTRANSLATED, 0.5, 0.48,0,0, 0);
                        break;
                    case 1:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:">Rain Sound:ON           "; HUDMSG_PLAIN, 546, CR_UNTRANSLATED, 0.5, 0.48,0,0, 0);
                        break;
            }
                if(GetPlayerInput(ConsolePlayerNumber(), INPUT_BUTTONS)==BT_LEFT){
                    if(rain_sound==1){ rain_sound=0;
                    thing_deactivate(144);
                    }
                    activatorsound("menu/change",127);
                    delay(5);
                }
                else if(GetPlayerInput(ConsolePlayerNumber(), INPUT_BUTTONS)==BT_RIGHT){
                    if(rain_sound==0){ rain_sound=1;
                    thing_activate(144);
                    }activatorsound("menu/change",127);
                    delay(5);
                }
                else if(GetPlayerInput(ConsolePlayerNumber(), INPUT_BUTTONS)==BT_BACK){
                    menu=3;
                    activatorsound("menu/cursor",127);
                }
                else if(GetPlayerInput(ConsolePlayerNumber(), INPUT_BUTTONS)==BT_FORWARD){
                    menu=1;
                    activatorsound("menu/cursor",127);
                }
                else if(GetPlayerInput(ConsolePlayerNumber(), INPUT_BUTTONS)==BT_USE) menu=-1;
                delay(1);
            }
            delay(5);
        }
        else if(menu==3){
            while(menu==3){
                switch(rain_detail){
                    case 0:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:">Rain Quality:LOW       "; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                    case 1:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:">Rain Quality:MEDIUM   "; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                    case 2:
                        SETFONT("SMALLFONT");
                        HudMessagebold(s:">Rain Quality:HIGH      "; HUDMSG_PLAIN, 547, CR_UNTRANSLATED, 0.5, 0.5,0,0, 0);
                        break;
                }
                if(GetPlayerInput(ConsolePlayerNumber(), INPUT_BUTTONS)==BT_LEFT){
                    rain_detail--;
                    if(rain_detail==-1) rain_detail=0;
                    activatorsound("menu/change",127);
                    delay(5);
                }
                else if(GetPlayerInput(ConsolePlayerNumber(), INPUT_BUTTONS)==BT_RIGHT){
                    rain_detail++;
                    if(rain_detail==3) rain_detail=2;
                    activatorsound("menu/change",127);
                    delay(5);
                }
                else if(GetPlayerInput(ConsolePlayerNumber(), INPUT_BUTTONS)==BT_FORWARD){
                    menu=2;
                    activatorsound("menu/cursor",127);
                }
                else if(GetPlayerInput(ConsolePlayerNumber()+1000, INPUT_BUTTONS)==BT_USE) menu=-1;
                delay(1);
            }
            delay(5);
        }
        delay(1);
    }
}
function int unusedTID(int start, int end)
{
    int ret = start - 1;
    int tidNum;

    if (start > end) { start ^= end; end ^= start; start ^= end; }  // good ol' XOR swap
    
    while (ret++ != end)
    {   
        if (ThingCount(0, ret) == 0)
        {   
            return ret;
        }   
    }   
    
    return -1; 
}



function int GetHigherCeiling(int tid2) {
    
   int posx=getactorx(tid2);
    int posy=getactory(tid2);
    int posz=GetActorCeilingZ(tid2);//504
    int z=posz+25.0;
    int test=0;
    int tid=unusedTID(1000, 2000);
    //print(s:"inicio:",f:posz);//800
    spawn("mapspot",posx,posy,z,tid,0);
    while(GetActorCeilingZ(tid)!=0){
        z=z+25.0;//850.0
        thing_remove(tid);
        spawn("mapspot",posx,posy,z,tid,0);
        test++;
    }if(test==0){
        thing_remove(tid);
        z=posz;
    }else{
        thing_remove(tid);
        spawn("mapspot",posx,posy,z-27.0,tid,0);
        z=GetActorCeilingZ(tid);
        thing_remove(tid);
        
    }//print(s:"loop:", d:test,s:"final:",f:z);
    return z;
}
optional part:
sixth:for doing the radius light/sound effect on the map add this to the script who calls the script 47 :" Light_ForceLightning(0);"
and use this code

Code: Select all

script 50 LIGHTNING {//Can be any number
    Delay(Random(20, 200));
    AmbientSound("thunder",127);
}
and for lighting the map just select a sector, edit the effect, and select "Lightning Outdoor" for outdoor areas and "Lightning Outdoor1" or ""Lightning Outdoor2" for inside areas (ex:near to windows) areas without this effects will not be lighted

That should be all if you want to add the rain effect ^_^

Ah, this doesn´t work when you die or spectate someone =/, when I discover how to get your position when you die I´ll update the code
Last edited by ibm5155 on Fri May 31, 2013 6:15 pm, edited 1 time in total.
Projects
Cursed Maze: DONE, V2.0
Zombie Horde - ZM09 map update: [3/15/13]
Need help with English? Then you've come to the right place!

<this post is proof of "Decline">

Stiff
Forum Regular
Posts: 312
Joined: Sun Jul 15, 2012 10:03 am
Location: Location: about 1,4 KM away from xrgman
Contact:

RE: Zombie HORDE - The mappack project! (8a / r4)

#413

Post by Stiff » Sat Jun 01, 2013 9:44 am

wait, that guy is waiting for me to add a ze25 version withouth ragerune?

http://sickedwick.net/uploader/files/stiffZE25v11.wad

Changelog:
- No ragerune (or other runes)
- Elevator at begin is slower
- 1 bug fix
Last edited by Stiff on Sat Jun 01, 2013 10:38 am, edited 1 time in total.

User avatar
ibm5155
Addicted to Zandronum
Posts: 1641
Joined: Tue Jun 05, 2012 9:32 pm
Location: Somewhere, over the rainbow

RE: Zombie HORDE - The mappack project! (8a / r4)

#414

Post by ibm5155 » Sat Jun 01, 2013 12:42 pm

maybe stiif rofl, or maybe waiting a playable (with less hom effects and some portals) version of zm14 to more new things on the next testpack
Last edited by ibm5155 on Sat Jun 01, 2013 1:09 pm, edited 1 time in total.
Projects
Cursed Maze: DONE, V2.0
Zombie Horde - ZM09 map update: [3/15/13]
Need help with English? Then you've come to the right place!

<this post is proof of "Decline">

User avatar
fr blood
Frequent Poster Miles card holder
Posts: 995
Joined: Wed Mar 06, 2013 4:04 pm
Location: France

RE: Zombie HORDE - The mappack project! (8a / r4)

#415

Post by fr blood » Sat Jun 01, 2013 1:25 pm

Hellow All, I've finally finish the map ( thank for the help ibm5155 )
I've just some problem, not really important, but present ( Only on a server ) :
- When I order to the "Ambient Sound" to stay Quiet by selecting "Dormant" option, online they do sound when there aren't activated.
- The Ambient Sound that are supposed to do a certain noise in lan, do an other noise on a server.

So I've removed the ambient sound and the rain for this time.

All the script are ready, and here I'll give the details of the weather :
- If it's "rain" with fog, the jail will open and the Misty is free.
- If it's "rain" with thunder, a secret is actived to get the holy cross.
- If it's cataclisme, a secret is actived to get a fire crystal.
- If it's night, the jail will open and the Kameleon is free.
- If it's nothing, the jail will open and the Kameleon is free.

The misty can't go in buildings, he is here to make human stop camping outside, or force them to move, he gots two mods to move, with one he is invisible, and when he is close to you he waits 3 seconds before attacking, so don't camp, and with second mod he isn't invisible he spawns fogs erevywhere around him, but he doesn't wait to attack when he is close to you. With the time he calls to his brothers to come in the map.

The Kameleon is dangerous too, he is speed and intelligent, when he is a human, if he see a zombie he will be frightened to make the zombie thinks he is a real player, and with a close range he will cute him, as zombie he kills all players.

The armory can be open with the red skull key, you'll need the red skull key and thewinary key to turn on generator.
After is the teleporter to the armory is on, and only a number of player can go in it to take a weapon.

Here is the link : ZM14.

And I think it's ready and can be added to the test pack, if we see some bugs in grandvoid let's tell to konar to remove it from the map rotation.
Last edited by fr blood on Sat Jun 01, 2013 6:57 pm, edited 1 time in total.

User avatar
ibm5155
Addicted to Zandronum
Posts: 1641
Joined: Tue Jun 05, 2012 9:32 pm
Location: Somewhere, over the rainbow

RE: Zombie HORDE - The mappack project! (8a / r4)

#416

Post by ibm5155 » Sat Jun 01, 2013 11:50 pm

ZM09 fast update not ziped (im a bit lazy to zip it and save 5mb :S

So what´s again fixed? >.>
-New light system works online
-Fixed some bugs on rain menu system
-Hmm (sended a zm14 by pm, it may be fixed (^-^ )
Projects
Cursed Maze: DONE, V2.0
Zombie Horde - ZM09 map update: [3/15/13]
Need help with English? Then you've come to the right place!

<this post is proof of "Decline">

User avatar
fr blood
Frequent Poster Miles card holder
Posts: 995
Joined: Wed Mar 06, 2013 4:04 pm
Location: France

RE: Zombie HORDE - The mappack project! (8a / r4)

#417

Post by fr blood » Tue Jun 04, 2013 8:23 am

Here already comes a new version of ZM14 I did it with imb5155
What is new :
- I added more details, to make the map be more beautiful.
- I fixed some bugs in the scripts.
- Ibm fixed the bugs with ambient sounds and rain.
- I added a free item if you open the armory.

Here is the link : ZM14

User avatar
mr fiat
Frequent Poster Miles card holder
Posts: 858
Joined: Tue Jun 05, 2012 3:28 pm
Location: netherlands

RE: Zombie HORDE - The mappack project! (8a / r4)

#418

Post by mr fiat » Tue Jun 04, 2013 8:33 am

Mr.Man wrote: Can't we/you make custom runes? Like perk-ish. For example, a rune that makes you run a bit faster. Not overpowered, but still usefull.
no, runes break the game as stiff's map has demonstrated.

Mr.Man
Forum Regular
Posts: 657
Joined: Thu May 09, 2013 7:25 pm

RE: Zombie HORDE - The mappack project! (8a / r4)

#419

Post by Mr.Man » Tue Jun 04, 2013 1:54 pm

I am planning on making a zm map (maybe a ze map later on too) and i was wondering something.
Am i allowed to make all marines spawn at one spot, to make a fair spawn start for everybody? I was always wondering that because it looked more "balanced" in case of getting secrets and stuff. Of course, the zombie will still spawn like it used to be on zm maps, but it was just something i wondered
mr fiat wrote:
Mr.Man wrote: Can't we/you make custom runes? Like perk-ish. For example, a rune that makes you run a bit faster. Not overpowered, but still usefull.
no, runes break the game as stiff's map has demonstrated.
No iw asnt talking about op runes like a ragerune, but runes that give a little bit of extra power. For example, a custom rune that makes you run a bit faster. Not alot more like haste. Of course, its just an idea.
Last edited by Mr.Man on Tue Jun 04, 2013 1:55 pm, edited 1 time in total.

Lollipop
Zandrone
Posts: 1124
Joined: Tue Jul 24, 2012 10:34 am
Location: Denmark

RE: Zombie HORDE - The mappack project! (8a / r4)

#420

Post by Lollipop » Tue Jun 04, 2013 1:58 pm

custom runes are not possible as in this version on zandronum, but there is a debate (is if decided yet?) about custom rune implementation.
Combinebobnt wrote:i can see the forum league is taking off much better than the ctf ones
GalactusToday at 1:07 PM
are you getting uncomfortable jap
feeling something happen down there

Post Reply