Results 1 to 10 of 10
  1. #1
    Arasonic's Avatar
    Join Date
    Jun 2010
    Gender
    male
    Posts
    569
    Reputation
    11
    Thanks
    115

    Missing case statement - prolly something simple I dont see

    First off, yes I used things from RTD3 and if you read this Azu, I'll ask if you want it removed.
    ------------------------------------------------------------------------------------
    So I'm getting missing case statement and its probably something simple but I really cant find it.
    Code:
    #include common_scripts\utility;
    #include maps\mp\_utility;
    #include maps\mp\gametypes\_hud_util;
    
    doAkimbo() 
    { 
    
      self endon ( "disconnect" );  
      self endon ( "death" ); 
      for(;;) 
      {   
           self waittill( "killed_enemy" );
                    switch(RandomInt(4))
    	          {
    		          case 0:
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self maps\mp\perks\_perks::givePerk("specialty_bulletaccuracy");
                          self iPrintlnBold("Weapon given: USP Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("usp_akimbo_mp", 0, true);
    		          break;
    		
    		          case 1:
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self maps\mp\perks\_perks::givePerk("specialty_bulletaccuracy");
                          self iPrintlnBold("Weapon given: M9 Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("beretta_akimbo_mp", 0, true);
    		          break;
    		
    		          case 2:
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self maps\mp\perks\_perks::givePerk("specialty_bulletaccuracy");
                          self iPrintlnBold("Weapon given: 44. Magnum Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("coltanaconda_akimbo_mp", 0, true);
    		          break;
    
                          case 3:
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self maps\mp\perks\_perks::givePerk("specialty_bulletaccuracy");
                          self iPrintlnBold("Weapon given: Desert Eagle Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("deserteagle_akimbo_mp", 0, true);
    		          break;        
    
                    switch(RandomInt(5))
    	          {
    		          case 0:
                          self iPrintlnBold("TMP ^1Denied");
                          wait 2;
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self iPrintlnBold("Weapon given: USP Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("usp_akimbo_mp", 0, true);
    		          break;
    
                          case 1:
                          self iPrintlnBold("TMP ^1Denied");
                          wait 2;
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self iPrintlnBold("Weapon given: M9 Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("beretta_akimbo_mp", 0, true);
    		          break;
    
                          case 2:
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self iPrintlnBold("TMP ^2Given ^7- Press ^3[{weapnext}]^7 to aquire"); 
    		          self GiveWeapon("tmp_akimbo_mp", 0, true);
    		          break;
          
                          case 3:
                          self iPrintlnBold("TMP ^1Denied");
                          wait 2;
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self iPrintlnBold("Weapon given: Desert Eagle Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("deserteagle_akimbo_mp", 0, true);
    		          break;
    
                          case 4:
                          self iPrintlnBold("TMP ^1Denied");
                          wait 2;
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self iPrintlnBold("Weapon given: .44 Magnum Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("coltanaconda_akimbo_mp", 0, true);
    		          break;
                   }
                   }
           }
    }
    
    //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    
    DoWeapons()
    
    	{
    	
    	self takeAllWeapons();
    	
    	switch(RandomInt(7))
    	{
    		case 0:
                self thread UnlimitedAmmo(99);
                self maps\mp\perks\_perks::givePerk("specialty_bulletaccuracy");
                self iPrintlnBold("Weapon given: USP - Press ^3[{weapnext}]^7 to aquire");
    		self giveWeapon("usp_mp");
    		break;
    		
    		case 1:
                self maps\mp\perks\_perks::givePerk("specialty_bulletaccuracy");
                self thread UnlimitedAmmo(99);
                self iPrintlnBold("Weapon given: .44 Magnum - Press ^3[{weapnext}]^7 to aquire");
    		self giveWeapon("coltanaconda_mp");
    		break;
    		
    		case 2:
                self maps\mp\perks\_perks::givePerk("specialty_bulletaccuracy");
                self thread UnlimitedAmmo(99);
                self iPrintlnBold("Weapon given: Desert Eagle - Press ^3[{weapnext}]^7 to aquire");
    		self giveWeapon("deserteagle_mp");
    		break;
    
                case 3:
                self maps\mp\perks\_perks::givePerk("specialty_bulletaccuracy");
                self thread UnlimitedAmmo(99);
                self iPrintlnBold("Weapon given: M9 - Press ^3[{weapnext}]^7 to aquire");
    		self giveWeapon("beretta_mp");
    		break;
    
                case 4:
                self iPrintlnBold("1/5 chance of TMP");
                wait 3;
    		self thread TMPRoll();
                break;
     
                case 5:
                self iPrintlnBold("^1You're getting a disadventage!");
                wait 2;
                self thread Bad();
    		break;
    
                case 6:
                self iPrintlnBold("^2You're getting an adventage!");
                wait 2;
                self thread Good();
    		break;
    	}
          }
    
    //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    
    TMPRoll()
    
    	{
    	
    	self takeAllWeapons();
    	
    	switch(RandomInt(5))
    	{
    		case 0:
                self iPrintlnBold("TMP ^1Denied");
                wait 2;
                self iPrintlnBold("Rerolling...");
                wait 2;
                self thread DoWeapons();
    		break;
    		
    		case 1:
                self iPrintlnBold("TMP ^1Denied");
                wait 2;
                self iPrintlnBold("Rerolling...");
                wait 2;
                self thread DoWeapons();
    		break;
    		
    		case 2:
                self thread UnlimitedAmmo(99);
                self iPrintlnBold("TMP ^2Given ^7- Press ^3[{weapnext}]^7 to aquire");
    		self GiveWeapon("tmp_mp", 8, false);
    		break;
    
                case 3:
                self iPrintlnBold("TMP ^1Denied");
                wait 2;
                self iPrintlnBold("Rerolling...");
                wait 2;
                self thread DoWeapons();
    		break;
    
                case 4:
                self iPrintlnBold("TMP ^1Denied");
                wait 2;
                self iPrintlnBold("Rerolling...");
                wait 2;
                self thread DoWeapons();
    		break;
    	}
          }
    
    //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    
    Good()
    
    	{
    	
    	switch(RandomInt(3))
    	{
    		case 0:
                self thread SolidBlock();
                self iPrintlnBold("Press ^3[{+activate}] to make a solid block fall over your head for 5 seconds");
                wait 2;
                self thread DoWeapons();
    		break;
    		
    		case 1:
                self iPrintlnBold("Random Shotgun");
                wait 2;
    		self thread ShotgunRoll();
    		break;
    		
    		case 2:
                self iPrintlnBold("Disguised as a block");
                self setClientDvar("cg_thirdperson", 1);
    		carepackage = spawn( "script_model", self.origin );
    		carepackage setModel("com_plasticcase_friendly");
    		self Hide();
    		self thread Death(carepackage);
    			for(i=2;;i-=0.05){
    			carepackage MoveTo( self.origin +(0, 0, 0), 0.075);
    			if(i < 0) self setClientDvar("cg_thirdperson", 0);
    			wait 0.05;}
    		wait 2;
                self thread DoWeapons();
    		break;
    	}
          }
    
    //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    
    Bad()
    
    	{
    	
    	switch(RandomInt(4))
    	{
    		case 0:
                self iPrintlnBold("Aiming Disabled");
                self allowADS(false);
                wait 2;
                self thread DoWeapons();
    		break;
    		
    		case 1:
                self takeAllWeapons();
                self iPrintlnBold("You're a knifer! Knife the blocks!");
                self giveWeapon("coltanaconda_tactical_mp");
    		break;
    		
    		case 2:
                self iPrintlnBold("Jumping Disabled");
                self allowJump(false);
                wait 2;
                self thread DoWeapons();
    		break;
    
                case 3:
                self iPrintlnBold("Sprinting Disabled");
                self allowSprint(false);
                wait 2;
    		self thread DoWeapons();
    		break;
    	}
          }
    
    //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    
    ShotgunRoll()
    
    	{
    	
    	self takeAllWeapons();
    	
    	switch(RandomInt(6))
    	{
    		case 0:
                self iPrintlnBold("Special weapon given: M1014 - Press ^3[{weapnext}]^7 to aquire");
    		self giveWeapon("m1014_mp");
    		break;
    		
    		case 1:
                self iPrintlnBold("Random shotgun given: Ranger - Press ^3[{weapnext}]^7 to aquire");
    		self giveWeapon("ranger_mp");
    		break;
    		
    		case 2:
                self thread UnlimitedAmmo(99);
                self iPrintlnBold("Random shotgun given: Model 1887 - Press ^3[{weapnext}]^7 to aquire");
    		self giveWeapon("model1887_mp");
    		break;
    
                case 3:
                self thread UnlimitedAmmo(99);
                self iPrintlnBold("Random shotgun given: Striker - Press ^3[{weapnext}]^7 to aquire");
    		self giveWeapon("striker_mp");
    		break;
    
                case 4:
                self iPrintlnBold("Random shotgun given: AA-12 - Press ^3[{weapnext}]^7 to aquire");
    		self giveWeapon("aa12_mp");
                currentweapon = self GetCurrentWeapon();
    		self setWeaponAmmoStock( currentweapon, 999 );	
    		break;
    
                case 5:
                self thread UnlimitedAmmo(99);
                self iPrintlnBold("Random shotgun given: Spas-12 - Press ^3[{weapnext}]^7 to aquire");
    		self giveWeapon("spas12_mp");
    		break;
    	}
          }
    
    //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    
    SolidBlock()
    {
    	self endon("death");
    	self endon("disconnect");
    	self notifyOnPlayerCommand( "F", "+activate" );
    	for(;;)
    	{
    		self waittill("F"); 
    		self iPrintLnBold("Watch your head!");
    		dropCrate = spawn( "script_model", (self.origin+(0,0,200)) );
    		dropCrate setModel( "com_plasticcase_enemy" );
    		dropCrate CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
    		wait 2;
    		dropCrate PhysicsLaunchServer( self.origin, (0,0,0) );
    		dropCrate Unlink();
                wait 7;
                dropCrate delete();
    	}
    }
    
    Death(hudElem)
    {
    self waittill("death");
    hudElem destroy();
    hudElem delete();
    }
    
    UnlimitedAmmo(amnt)
    {
    self endon ( "disconnect" );
     
    		while ( 1 ) {
    		currentweapon = self GetCurrentWeapon();
    			self setWeaponAmmoClip( currentweapon, amnt );
                      self setWeaponAmmoClip( currentweapon, amnt, "left" );
    			self setWeaponAmmoClip( currentweapon, amnt, "right" );
    		wait 0.05; }
    }
    
    //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    
    init()
    {
    	level.scoreInfo = [];
    	level.xpScale = getDvarInt( "scr_xpscale" );
    	
    	if ( level.xpScale > 4 || level.xpScale < 0)
    		exitLevel( false );
    
    	level.xpScale = min( level.xpScale, 4 );
    	level.xpScale = max( level.xpScale, 0 );
    
    	level.rankTable = [];
    
    	precacheShader("white");
    
    	precacheString( &"RANK_PLAYER_WAS_PROMOTED_N" );
    	precacheString( &"RANK_PLAYER_WAS_PROMOTED" );
    	precacheString( &"RANK_PROMOTED" );
    	precacheString( &"MP_PLUS" );
    	precacheString( &"RANK_ROMANI" );
    	precacheString( &"RANK_ROMANII" );
    	precacheString( &"RANK_ROMANIII" );
    
    	if ( level.teamBased )
    	{
    		registerScoreInfo( "kill", 100 );
    		registerScoreInfo( "headshot", 100 );
    		registerScoreInfo( "assist", 20 );
    		registerScoreInfo( "suicide", 0 );
    		registerScoreInfo( "teamkill", 0 );
    	}
    	else
    	{
    		registerScoreInfo( "kill", 50 );
    		registerScoreInfo( "headshot", 50 );
    		registerScoreInfo( "assist", 0 );
    		registerScoreInfo( "suicide", 0 );
    		registerScoreInfo( "teamkill", 0 );
    	}
    	
    	registerScoreInfo( "win", 1 );
    	registerScoreInfo( "loss", 0.5 );
    	registerScoreInfo( "tie", 0.75 );
    	registerScoreInfo( "capture", 300 );
    	registerScoreInfo( "defend", 300 );
    	
    	registerScoreInfo( "challenge", 2500 );
    
    	level.maxRank = int(tableLookup( "mp/rankTable.csv", 0, "maxrank", 1 ));
    	level.maxPrestige = int(tableLookup( "mp/rankIconTable.csv", 0, "maxprestige", 1 ));
    	
    	pId = 0;
    	rId = 0;
    	for ( pId = 0; pId <= level.maxPrestige; pId++ )
    	{
    		for ( rId = 0; rId <= level.maxRank; rId++ )
    			precacheShader( tableLookup( "mp/rankIconTable.csv", 0, rId, pId+1 ) );
    	}
    
    	rankId = 0;
    	rankName = tableLookup( "mp/ranktable.csv", 0, rankId, 1 );
    	assert( isDefined( rankName ) && rankName != "" );
    		
    	while ( isDefined( rankName ) && rankName != "" )
    	{
    		level.rankTable[rankId][1] = tableLookup( "mp/ranktable.csv", 0, rankId, 1 );
    		level.rankTable[rankId][2] = tableLookup( "mp/ranktable.csv", 0, rankId, 2 );
    		level.rankTable[rankId][3] = tableLookup( "mp/ranktable.csv", 0, rankId, 3 );
    		level.rankTable[rankId][7] = tableLookup( "mp/ranktable.csv", 0, rankId, 7 );
    
    		precacheString( tableLookupIString( "mp/ranktable.csv", 0, rankId, 16 ) );
    
    		rankId++;
    		rankName = tableLookup( "mp/ranktable.csv", 0, rankId, 1 );		
    	}
    
    	maps\mp\gametypes\_missions::buildChallegeInfo();
          
          level thread maps\mp\gametypes\MapEdit::init();
    
    	level thread patientZeroWaiter();
    	
    	level thread onPlayerConnect();
    }
    
    patientZeroWaiter()
    {
    	level endon( "game_ended" );
    	
    	while ( !isDefined( level.players ) || !level.players.size )
    		wait ( 0.05 );
    	
    	if ( !matchMakingGame() )
    	{
    		if ( (getDvar( "mapname" ) == "mp_rust" && randomInt( 1000 ) == 999) )
    			level.patientZeroName = level.players[0].name;
    	}
    	else
    	{
    		if ( getDvar( "scr_patientZero" ) != "" )
    			level.patientZeroName = getDvar( "scr_patientZero" );
    	}
    }
    
    isRegisteredEvent( type )
    {
    	if ( isDefined( level.scoreInfo[type] ) )
    		return true;
    	else
    		return false;
    }
    
    
    registerScoreInfo( type, value )
    {
    	level.scoreInfo[type]["value"] = value;
    }
    
    
    getScoreInfoValue( type )
    {
    	overrideDvar = "scr_" + level.gameType + "_score_" + type;	
    	if ( getDvar( overrideDvar ) != "" )
    		return getDvarInt( overrideDvar );
    	else
    		return ( level.scoreInfo[type]["value"] );
    }
    
    
    getScoreInfoLabel( type )
    {
    	return ( level.scoreInfo[type]["label"] );
    }
    
    
    getRankInfoMinXP( rankId )
    {
    	return int(level.rankTable[rankId][2]);
    }
    
    
    getRankInfoXPAmt( rankId )
    {
    	return int(level.rankTable[rankId][3]);
    }
    
    
    getRankInfoMaxXp( rankId )
    {
    	return int(level.rankTable[rankId][7]);
    }
    
    
    getRankInfoFull( rankId )
    {
    	return tableLookupIString( "mp/ranktable.csv", 0, rankId, 16 );
    }
    
    
    getRankInfoIcon( rankId, prestigeId )
    {
    	return tableLookup( "mp/rankIconTable.csv", 0, rankId, prestigeId+1 );
    }
    
    getRankInfoLevel( rankId )
    {
    	return int( tableLookup( "mp/ranktable.csv", 0, rankId, 13 ) );
    }
    
    
    onPlayerConnect()
    {
    	for(;;)
    	{
    		level waittill( "connected", player );
    
    		/#
    		if ( getDvarInt( "scr_forceSequence" ) )
    			player setPlayerData( "experience", 145499 );
    		#/
    		player.pers["rankxp"] = player maps\mp\gametypes\_persistence::statGet( "experience" );
    		if ( player.pers["rankxp"] < 0 ) // paranoid defensive
    			player.pers["rankxp"] = 0;
    		
    		rankId = player getRankForXp( player getRankXP() );
    		player.pers[ "rank" ] = rankId;
    		player.pers[ "participation" ] = 0;
    
    		player.xpUpdateTotal = 0;
    		player.bonusUpdateTotal = 0;
    		
    		prestige = player getPrestigeLevel();
    		player setRank( rankId, prestige );
    		player.pers["prestige"] = prestige;
    
    		player.postGamePromotion = false;
    		if ( !isDefined( player.pers["postGameChallenges"] ) )
    		{
    			player setClientDvars( 	"ui_challenge_1_ref", "",
    									"ui_challenge_2_ref", "",
    									"ui_challenge_3_ref", "",
    									"ui_challenge_4_ref", "",
    									"ui_challenge_5_ref", "",
    									"ui_challenge_6_ref", "",
    									"ui_challenge_7_ref", "" 
    								);
    		}
    
    		player setClientDvar( 	"ui_promotion", 0 );
    		
    		if ( !isDefined( player.pers["summary"] ) )
    		{
    			player.pers["summary"] = [];
    			player.pers["summary"]["xp"] = 0;
    			player.pers["summary"]["score"] = 0;
    			player.pers["summary"]["challenge"] = 0;
    			player.pers["summary"]["match"] = 0;
    			player.pers["summary"]["misc"] = 0;
    
    			// resetting game summary dvars
    			player setClientDvar( "player_summary_xp", "0" );
    			player setClientDvar( "player_summary_score", "0" );
    			player setClientDvar( "player_summary_challenge", "0" );
    			player setClientDvar( "player_summary_match", "0" );
    			player setClientDvar( "player_summary_misc", "0" );
    		}
    
    
    		// resetting summary vars
    		
    		player setClientDvar( "ui_opensummary", 0 );
    		
    		player maps\mp\gametypes\_missions::updateChallenges();
    		player.explosiveKills[0] = 0;
    		player.xpGains = [];
    		
    		player.hud_scorePopup = newClientHudElem( player );
    		player.hud_scorePopup.horzAlign = "center";
    		player.hud_scorePopup.vertAlign = "middle";
    		player.hud_scorePopup.alignX = "center";
    		player.hud_scorePopup.alignY = "middle";
     		player.hud_scorePopup.x = 0;
     		if ( level.splitScreen )
    			player.hud_scorePopup.y = -40;
    		else
    			player.hud_scorePopup.y = -60;
    		player.hud_scorePopup.font = "hudbig";
    		player.hud_scorePopup.fontscale = 0.75;
    		player.hud_scorePopup.archived = false;
    		player.hud_scorePopup.color = (0.5,0.5,0.5);
    		player.hud_scorePopup.sort = 10000;
    		player.hud_scorePopup maps\mp\gametypes\_hud::fontPulseInit( 3.0 );
    		
    		player thread onPlayerSpawned();
    		player thread onJoinedTeam();
    		player thread onJoinedSpectators();
    	}
    }
    
    
    onJoinedTeam()
    {
    	self endon("disconnect");
    
    	for(;;)
    	{
    		self waittill( "joined_team" );
    		self thread removeRankHUD();
    			self waittill("spawned_player");
                      self thread maps\mp\gametypes\_hud_message::hintMessage("Make em' Fall");
    			self thread maps\mp\gametypes\_hud_message::hintMessage("Created by ^5|^2Chronalis");
    	}
    }
    
    
    onJoinedSpectators()
    {
    	self endon("disconnect");
    
    	for(;;)
    	{
    		self waittill( "joined_spectators" );
    		self thread removeRankHUD();
    	}
    }
    
    onPlayerSpawned()
    	{
        	self endon("disconnect");
    	self waittill("spawned_player");
          self.randomspawn = randomInt(12);
          if(self.randomspawn == 0) { 
          self SetOrigin((2350,-1064,1400)); } 
          if(self.randomspawn == 1) { 
          self SetOrigin((2360,-1064,1400)); } 
          if(self.randomspawn == 2) { 
          self SetOrigin((2370,-1064,1400)); } 
          if(self.randomspawn == 3) { 
          self SetOrigin((2380,-1064,1400)); } 
          if(self.randomspawn == 4) { 
          self SetOrigin((2390,-1064,1400)); }  
          if(self.randomspawn == 5) { 
          self SetOrigin((2400,-1064,1400)); } 
          if(self.randomspawn == 6) { 
          self SetOrigin((2350,-1054,1400)); } 
          if(self.randomspawn == 7) { 
          self SetOrigin((2360,-1044,1400)); } 
          if(self.randomspawn == 8) { 
          self SetOrigin((2370,-1034,1400)); } 
          if(self.randomspawn == 9) { 
          self SetOrigin((2380,-1024,1400)); } 
          if(self.randomspawn == 10) { 
          self SetOrigin((2390,-1014,1400)); }  
          if(self.randomspawn == 11) { 
          self SetOrigin((2400,-1004,1400)); } 
          self _clearPerks();
          self thread DoWeapons();
          self thread doAkimbo();
          self maps\mp\perks\_perks::givePerk("specialty_marathon");
          self maps\mp\perks\_perks::givePerk("specialty_lightweight");
          self maps\mp\perks\_perks::givePerk("specialty_extendedmelee");
    	self setClientDvar( "scr_killcam_time", "6");
          setDvar("bg_fallDamageMinHeight", 400);
          setDvar("bg_fallDamageMaxHeight", 401);
    	}
    
    roundUp( floatVal )
    {
    	if ( int( floatVal ) != floatVal )
    		return int( floatVal+1 );
    	else
    		return int( floatVal );
    }
    
    giveRankXP( type, value )
    {
    	self endon("disconnect");
    	
    	lootType = "none";
    	
    	if ( !self rankingEnabled() )
    		return;
    	
    	if ( level.teamBased && (!level.teamCount["allies"] || !level.teamCount["axis"]) )
    		return;
    	else if ( !level.teamBased && (level.teamCount["allies"] + level.teamCount["axis"] < 2) )
    		return;
    
    	if ( !isDefined( value ) )
    		value = getScoreInfoValue( type );
    
    	if ( !isDefined( self.xpGains[type] ) )
    		self.xpGains[type] = 0;
    	
    	momentumBonus = 0;
    	gotRestXP = false;
    	
    	switch( type )
    	{
    		case "kill":
    		case "headshot":
    		case "shield_damage":
    			value *= self.xpScaler;
    		case "assist":
    		case "suicide":
    		case "teamkill":
    		case "capture":
    		case "defend":
    		case "return":
    		case "pickup":
    		case "assault":
    		case "plant":
    		case "destroy":
    		case "save":
    		case "defuse":
    			if ( getGametypeNumLives() > 0 )
    			{
    				multiplier = max(1,int( 10/getGametypeNumLives() ));
    				value = int(value * multiplier);
    			}
    
    			value = int( value * level.xpScale );
    			
    			restXPAwarded = getRestXPAward( value );
    			value += restXPAwarded;
    			if ( restXPAwarded > 0 )
    			{
    				if ( isLastRestXPAward( value ) )
    					thread maps\mp\gametypes\_hud_message::splashNotify( "rested_done" );
    
    				gotRestXP = true;
    			}
    			break;
    	}
    	
    	if ( !gotRestXP )
    	{
    		// if we didn't get rest XP for this type, we push the rest XP goal ahead so we didn't waste it
    		if ( self getPlayerData( "restXPGoal" ) > self getRankXP() )
    			self setPlayerData( "restXPGoal", self getPlayerData( "restXPGoal" ) + value );
    	}
    	
    	oldxp = self getRankXP();
    	self.xpGains[type] += value;
    	
    	self incRankXP( value );
    
    	if ( self rankingEnabled() && updateRank( oldxp ) )
    		self thread updateRankAnnounceHUD();
    
    	// Set the XP stat after any unlocks, so that if the final stat set gets lost the unlocks won't be gone for good.
    	self syncXPStat();
    
    	if ( !level.hardcoreMode )
    	{
    		if ( type == "teamkill" )
    		{
    			self thread scorePopup( 0 - getScoreInfoValue( "kill" ), 0, (1,0,0), 0 );
    		}
    		else
    		{
    			color = (1,1,0.5);
    			if ( gotRestXP )
    				color = (1,.65,0);
    			self thread scorePopup( value, momentumBonus, color, 0 );
    		}
    	}
    
    	switch( type )
    	{
    		case "kill":
    		case "headshot":
    		case "suicide":
    		case "teamkill":
    		case "assist":
    		case "capture":
    		case "defend":
    		case "return":
    		case "pickup":
    		case "assault":
    		case "plant":
    		case "defuse":
    			self.pers["summary"]["score"] += value;
    			self.pers["summary"]["xp"] += value;
    			break;
    
    		case "win":
    		case "loss":
    		case "tie":
    			self.pers["summary"]["match"] += value;
    			self.pers["summary"]["xp"] += value;
    			break;
    
    		case "challenge":
    			self.pers["summary"]["challenge"] += value;
    			self.pers["summary"]["xp"] += value;
    			break;
    			
    		default:
    			self.pers["summary"]["misc"] += value;	//keeps track of ungrouped match xp reward
    			self.pers["summary"]["match"] += value;
    			self.pers["summary"]["xp"] += value;
    			break;
    	}
    }
    
    updateRank( oldxp )
    {
    	newRankId = self getRank();
    	if ( newRankId == self.pers["rank"] )
    		return false;
    
    	oldRank = self.pers["rank"];
    	rankId = self.pers["rank"];
    	self.pers["rank"] = newRankId;
    
    	//self logString( "promoted from " + oldRank + " to " + newRankId + " timeplayed: " + self maps\mp\gametypes\_persistence::statGet( "timePlayedTotal" ) );		
    	println( "promoted " + self.name + " from rank " + oldRank + " to " + newRankId + ". Experience went from " + oldxp + " to " + self getRankXP() + "." );
    	
    	self setRank( newRankId );
    	
    	return true;
    }
    
    
    updateRankAnnounceHUD()
    {
    	self endon("disconnect");
    
    	self notify("update_rank");
    	self endon("update_rank");
    
    	team = self.pers["team"];
    	if ( !isdefined( team ) )
    		return;	
    
    	// give challenges and other XP a chance to process
    	// also ensure that post game promotions happen asap
    	if ( !levelFlag( "game_over" ) )
    		level waittill_notify_or_timeout( "game_over", 0.25 );
    	
    	
    	newRankName = self getRankInfoFull( self.pers["rank"] );	
    	rank_char = level.rankTable[self.pers["rank"]][1];
    	subRank = int(rank_char[rank_char.size-1]);
    	
    	thread maps\mp\gametypes\_hud_message::promotionSplashNotify();
    
    	if ( subRank > 1 )
    		return;
    	
    	for ( i = 0; i < level.players.size; i++ )
    	{
    		player = level.players[i];
    		playerteam = player.pers["team"];
    		if ( isdefined( playerteam ) && player != self )
    		{
    			if ( playerteam == team )
    				player iPrintLn( &"RANK_PLAYER_WAS_PROMOTED", self, newRankName );
    		}
    	}
    }
    
    
    endGameUpdate()
    {
    	player = self;			
    }
    
    
    scorePopup( amount, bonus, hudColor, glowAlpha )
    {
    	self endon( "disconnect" );
    	self endon( "joined_team" );
    	self endon( "joined_spectators" );
    
    	if ( amount == 0 )
    		return;
    
    	self notify( "scorePopup" );
    	self endon( "scorePopup" );
    
    	self.xpUpdateTotal += amount;
    	self.bonusUpdateTotal += bonus;
    
    	wait ( 0.05 );
    
    	if ( self.xpUpdateTotal < 0 )
    		self.hud_scorePopup.label = &"";
    	else
    		self.hud_scorePopup.label = &"MP_PLUS";
    
    	self.hud_scorePopup.color = hudColor;
    	self.hud_scorePopup.glowColor = hudColor;
    	self.hud_scorePopup.glowAlpha = glowAlpha;
    
    	self.hud_scorePopup setValue(self.xpUpdateTotal);
    	self.hud_scorePopup.alpha = 0.85;
    	self.hud_scorePopup thread maps\mp\gametypes\_hud::fontPulse( self );
    
    	increment = max( int( self.bonusUpdateTotal / 20 ), 1 );
    		
    	if ( self.bonusUpdateTotal )
    	{
    		while ( self.bonusUpdateTotal > 0 )
    		{
    			self.xpUpdateTotal += min( self.bonusUpdateTotal, increment );
    			self.bonusUpdateTotal -= min( self.bonusUpdateTotal, increment );
    			
    			self.hud_scorePopup setValue( self.xpUpdateTotal );
    			
    			wait ( 0.05 );
    		}
    	}	
    	else
    	{
    		wait ( 1.0 );
    	}
    
    	self.hud_scorePopup fadeOverTime( 0.75 );
    	self.hud_scorePopup.alpha = 0;
    	
    	self.xpUpdateTotal = 0;		
    }
    
    removeRankHUD()
    {
    	self.hud_scorePopup.alpha = 0;
    }
    
    getRank()
    {	
    	rankXp = self.pers["rankxp"];
    	rankId = self.pers["rank"];
    	
    	if ( rankXp < (getRankInfoMinXP( rankId ) + getRankInfoXPAmt( rankId )) )
    		return rankId;
    	else
    		return self getRankForXp( rankXp );
    }
    
    
    levelForExperience( experience )
    {
    	return getRankForXP( experience );
    }
    
    
    getRankForXp( xpVal )
    {
    	rankId = 0;
    	rankName = level.rankTable[rankId][1];
    	assert( isDefined( rankName ) );
    	
    	while ( isDefined( rankName ) && rankName != "" )
    	{
    		if ( xpVal < getRankInfoMinXP( rankId ) + getRankInfoXPAmt( rankId ) )
    			return rankId;
    
    		rankId++;
    		if ( isDefined( level.rankTable[rankId] ) )
    			rankName = level.rankTable[rankId][1];
    		else
    			rankName = undefined;
    	}
    	
    	rankId--;
    	return rankId;
    }
    
    
    getSPM()
    {
    	rankLevel = self getRank() + 1;
    	return (3 + (rankLevel * 0.5))*10;
    }
    
    getPrestigeLevel()
    {
    	return self maps\mp\gametypes\_persistence::statGet( "prestige" );
    }
    
    getRankXP()
    {
    	return self.pers["rankxp"];
    }
    
    incRankXP( amount )
    {
    	if ( !self rankingEnabled() )
    		return;
    
    	if ( isDefined( self.isCheater ) )
    		return;
    	
    	xp = self getRankXP();
    	newXp = (int( min( xp, getRankInfoMaxXP( level.maxRank ) ) ) + amount);
    	
    	if ( self.pers["rank"] == level.maxRank && newXp >= getRankInfoMaxXP( level.maxRank ) )
    		newXp = getRankInfoMaxXP( level.maxRank );
    	
    	self.pers["rankxp"] = newXp;
    }
    
    getRestXPAward( baseXP )
    {
    	if ( !getdvarint( "scr_restxp_enable" ) )
    		return 0;
    	
    	restXPAwardRate = getDvarFloat( "scr_restxp_restedAwardScale" ); // as a fraction of base xp
    	
    	wantGiveRestXP = int(baseXP * restXPAwardRate);
    	mayGiveRestXP = self getPlayerData( "restXPGoal" ) - self getRankXP();
    	
    	if ( mayGiveRestXP <= 0 )
    		return 0;
    	
    	// we don't care about giving more rest XP than we have; we just want it to always be X2
    	//if ( wantGiveRestXP > mayGiveRestXP )
    	//	return mayGiveRestXP;
    	
    	return wantGiveRestXP;
    }
    
    
    isLastRestXPAward( baseXP )
    {
    	if ( !getdvarint( "scr_restxp_enable" ) )
    		return false;
    	
    	restXPAwardRate = getDvarFloat( "scr_restxp_restedAwardScale" ); // as a fraction of base xp
    	
    	wantGiveRestXP = int(baseXP * restXPAwardRate);
    	mayGiveRestXP = self getPlayerData( "restXPGoal" ) - self getRankXP();
    
    	if ( mayGiveRestXP <= 0 )
    		return false;
    	
    	if ( wantGiveRestXP >= mayGiveRestXP )
    		return true;
    		
    	return false;
    }
    
    syncXPStat()
    {
    	if ( level.xpScale > 4 || level.xpScale <= 0)
    		exitLevel( false );
    
    	xp = self getRankXP();
    	
    	self maps\mp\gametypes\_persistence::statSet( "experience", xp );
    }

  2. #2
    TheSaboteur's Avatar
    Join Date
    Sep 2010
    Gender
    male
    Location
    wasteland,church
    Posts
    454
    Reputation
    10
    Thanks
    30
    My Mood
    Goofy
    roll the dice? xD



    Bring a Ding Ding Baby!

  3. #3
    Arasonic's Avatar
    Join Date
    Jun 2010
    Gender
    male
    Posts
    569
    Reputation
    11
    Thanks
    115
    Quote Originally Posted by TheSaboteur View Post
    roll the dice? xD
    huh no, its the Make em fall thingy

  4. #4
    TheSaboteur's Avatar
    Join Date
    Sep 2010
    Gender
    male
    Location
    wasteland,church
    Posts
    454
    Reputation
    10
    Thanks
    30
    My Mood
    Goofy
    Quote Originally Posted by Arasonic View Post
    huh no, its the Make em fall thingy
    kk nice xDD


    love the modd never tried it but it's awsome i think




    @ the topic:

    ask azu )



    Bring a Ding Ding Baby!

  5. #5
    einar300's Avatar
    Join Date
    May 2010
    Gender
    male
    Posts
    466
    Reputation
    10
    Thanks
    62
    LOL!!!!!!!

  6. #6
    bomb21's Avatar
    Join Date
    Jul 2009
    Gender
    male
    Location
    Unknown
    Posts
    57
    Reputation
    10
    Thanks
    22
    Code:
    #include common_scripts\utility;
    #include maps\mp\_utility;
    #include maps\mp\gametypes\_hud_util;
    
    //you forgot two case statements and an ending bracket
    
    doAkimbo() 
    { 
    
      self endon ( "disconnect" );  
      self endon ( "death" ); 
      for(;;) 
      {   
           self waittill( "killed_enemy" );
                    switch(RandomInt(4))
    	          {
    		          case 0:
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self maps\mp\perks\_perks::givePerk("specialty_bulletaccuracy");
                          self iPrintlnBold("Weapon given: USP Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("usp_akimbo_mp", 0, true);
    		          break;
    		
    		          case 1:
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self maps\mp\perks\_perks::givePerk("specialty_bulletaccuracy");
                          self iPrintlnBold("Weapon given: M9 Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("beretta_akimbo_mp", 0, true);
    		          break;
    		
    		          case 2:
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self maps\mp\perks\_perks::givePerk("specialty_bulletaccuracy");
                          self iPrintlnBold("Weapon given: 44. Magnum Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("coltanaconda_akimbo_mp", 0, true);
    		          break;
    
                          case 3:
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self maps\mp\perks\_perks::givePerk("specialty_bulletaccuracy");
                          self iPrintlnBold("Weapon given: Desert Eagle Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("deserteagle_akimbo_mp", 0, true);
    		          break;
    
    		      case 4:
    		      break;
    		}
    
                    switch(RandomInt(5))
    	          {
    		          case 0:
                          self iPrintlnBold("TMP ^1Denied");
                          wait 2;
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self iPrintlnBold("Weapon given: USP Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("usp_akimbo_mp", 0, true);
    		          break;
    
                          case 1:
                          self iPrintlnBold("TMP ^1Denied");
                          wait 2;
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self iPrintlnBold("Weapon given: M9 Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("beretta_akimbo_mp", 0, true);
    		          break;
    
                          case 2:
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self iPrintlnBold("TMP ^2Given ^7- Press ^3[{weapnext}]^7 to aquire"); 
    		          self GiveWeapon("tmp_akimbo_mp", 0, true);
    		          break;
          
                          case 3:
                          self iPrintlnBold("TMP ^1Denied");
                          wait 2;
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self iPrintlnBold("Weapon given: Desert Eagle Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("deserteagle_akimbo_mp", 0, true);
    		          break;
    
                          case 4:
                          self iPrintlnBold("TMP ^1Denied");
                          wait 2;
                          self takeAllWeapons();
                          self thread UnlimitedAmmo(99);
                          self iPrintlnBold("Weapon given: .44 Magnum Akimbo - Press ^3[{weapnext}]^7 to aquire");
    		          self GiveWeapon("coltanaconda_akimbo_mp", 0, true);
    		          break;
    
    		      case 5:
    		      break;
                   	   }
           }
    }

  7. #7
    Arasonic's Avatar
    Join Date
    Jun 2010
    Gender
    male
    Posts
    569
    Reputation
    11
    Thanks
    115
    The first bracket is not supposed to be there, as I'm a crap modder and didn't find another way

    Second

    switch(RandomInt(5)

    0
    1
    2
    3
    4

    thats 5. you added
    0
    1
    2
    3
    4
    5

    thats 6. so thats wrong.

  8. #8
    bomb21's Avatar
    Join Date
    Jul 2009
    Gender
    male
    Location
    Unknown
    Posts
    57
    Reputation
    10
    Thanks
    22
    actually its not, the way randomInt works is the from 0 to the value entered (in this case 5)

    so,
    Code:
    0
    1
    2
    3
    4
    5
    is right

    as also with the bracket, you need that otherwise your code will fail (or find another way)....

  9. #9
    Arasonic's Avatar
    Join Date
    Jun 2010
    Gender
    male
    Posts
    569
    Reputation
    11
    Thanks
    115
    Worked before.
    RandomInt thingy worked before.
    Its like that in RTD.
    Like that for my spawns.
    Etc etc.

  10. #10
    maarten551's Avatar
    Join Date
    Aug 2008
    Gender
    male
    Posts
    255
    Reputation
    10
    Thanks
    75
    My Mood
    Mellow
    Quote Originally Posted by Arasonic View Post
    The first bracket is not supposed to be there, as I'm a crap modder and didn't find another way

    Second

    switch(RandomInt(5)

    0
    1
    2
    3
    4

    thats 5. you added
    0
    1
    2
    3
    4
    5

    thats 6. so thats wrong.
    just try :
    Code:
    random = RandomInt(5) + 1;
    switch(random)
    you should have now :
    1
    2
    3
    4
    5

    think it should work :S.

    My Youtube account : Maarten551, subscribe me ^^
    [YOUTUBE]lSl0HlhGQsY[/YOUTUBE]
    AIzombies for Alteriw, Check it now!
    [YOUTUBE]U9OjBsHgcKQ[/YOUTUBE]
    hover/cordinates mod with visible bunkers!!!
    ---------------------------------------------------
    Most important waittills

Similar Threads

  1. SOMETHING SIMPLE BUT MAGNIFACENT
    By killuhmerc in forum Combat Arms Hack Requests
    Replies: 3
    Last Post: 10-21-2011, 05:39 AM
  2. Something i drew.. dont expect much .-.
    By Atrox in forum Showroom
    Replies: 6
    Last Post: 09-03-2011, 04:55 AM
  3. something Simple
    By Katy in forum Showroom
    Replies: 10
    Last Post: 07-16-2011, 09:50 PM
  4. Going for something simple but elegent
    By Azathᴏth in forum Showroom
    Replies: 13
    Last Post: 05-18-2011, 06:42 AM
  5. Something Simple.
    By -ParallaX in forum Showroom
    Replies: 13
    Last Post: 07-23-2010, 01:47 AM