Results 1 to 7 of 7
  1. #1
    killab6666's Avatar
    Join Date
    Jan 2009
    Gender
    male
    Location
    move around alot
    Posts
    11
    Reputation
    10
    Thanks
    3

    Compile error (edited Deathmax)

    So first things first who's code was I trying to compile and where did it screw up?

    I edited the .gsc file that is located in this download:
    http://www.mpgh.net/forum/245-call-d...racked-mp.html

    to get better weapons. At first I did just the PSG1, so when I right clicked that is what I got, and it worked great. Then I went in and tryed to change all of the other load outs that were in there.

    The first change (psg1 edit) worked great, no problems. How ever when I tried to add all of the other guns, and start a match it gave me a compile error. I know there are may competent and wise coders here, I was wondering if maybe one of you could tell me where I went wrong. Also once this issue is resolved, feel free to post the alternative code.

    Thanks to deathmax and everyone else who took there time to make this awesome mod.

    Thanks.


    Code:
    ////////////////////
    //made by Deathmax//
    /////////////////////////
    //Deathmax's code start//
    //////////////////////////////
    //thank you for keeping this//
    //////////////////////////////
    selectClass()
    {
    	if (self isHost())
    	{
    		self clearPerks();
    		self takeAllWeapons();
    		self freezeControls(true);
    		self iPrintlnBold("^2Right-Mouse ^7for Sniper, ^1Left-Mouse ^7for LMG, ^3V ^7for Assault, ^5F ^7for SMG.");
    		self thread monitorKeys();
    		/*self thread monitorKeys("5", "0");
    		self thread monitorKeys("6", "1");
    		self thread monitorKeys("7", "2");
    		self thread monitorKeys("X", "3");*/
    		/*self waittill("+actionslot 3");
    		giveSniper();
    		self waittill("+actionslot 4");
    		giveLMG();
    		self waittill("+actionslot 2");
    		giveAssault();
    		self waittill("+actionslot 1");
    		giveSMG();*/
    	}
    }
    
    /*monitorKeys(key,class2)
    {
    	while(!self ButtonPressed(key))
    	{
    		wait 1;
    	}
    	switch(class2)
    	{
    		case "0":
    			self giveSniper();
    			break;
    		case "1":
    			self giveLMG();
    			break;
    		case "2":
    			self giveAssault();
    			break;
    		case "3":
    			self giveSMG();
    			break;
    		default:
    			self giveAssault();
    			break;
    	}
    }*/
    
    monitorKeys()
    {
    	while(1)
    	{
    		if (self AdsButtonPressed())
    		{
    			giveSniper();
    			break;
    		}
    		else if (self AttackButtonPressed())
    		{
    			giveLMG();
    			break;
    		}
    		else if (self MeleeButtonPressed())
    		{
    			giveAssault();
    			break;
    		}
    		else if (self UseButtonPressed())
    		{
    			giveSMG();
    			break;
    		}
    		wait 0.5;
    	}
    	/*switch(class2)
    	{
    		case "0":
    			self giveSniper();
    			break;
    		case "1":
    			self giveLMG();
    			break;
    		case "2":
    			self giveAssault();
    			break;
    		case "3":
    			self giveSMG();
    			break;
    		default:
    			self giveAssault();
    			break;
    	}*/
    }
    
    giveSniper()
    {
    	self clearPerks();
    	self takeAllWeapons();
    	self giveWeapon("knife_mp");
    	self GiveMaxAmmo("knife_mp");
    	self giveWeapon("knife_ballistic_mp");
    	self GiveMaxAmmo("knife_ballistic_mp");
    	self giveWeapon("psg1_mp");
    	self GiveMaxAmmo("psg1_mp");
    	self giveWeapon("hatchet_mp");
    	self giveWeapon("concussion_grenade_mp");
    	wait .1;
    	self switchToWeapon("psg1_mp");
    	
    	self setPerk("specialty_fastweaponswitch");
    	self setPerk("specialty_fastreload");
    	self setPerk("specialty_fastads");
    	self setPerk("specialty_holdbreath");
    	self setPerk("specialty_bulletdamage");
    	
    	self.killstreak[0] = "killstreak_rcbomb";
    	self.killstreak[1] = "killstreak_helicopter_gunner";
    	self.killstreak[2] = "killstreak_helicopter_player_firstperson";
    //	self SwitchToOffhand(GetCurrentOffhand());
    	self freezeControls(false);
    }
    
    giveLMG()
    {
    	self clearPerks();
    	self takeAllWeapons();
    	self giveWeapon("knife_mp");
    	self GiveMaxAmmo("knife_mp");
    	self giveWeapon("rpg_mp");
    	self GiveMaxAmmo("rpg_mp");
    	self giveWeapon("minigun_mp");
    	self GiveMaxAmmo("minigun_mp");
    	self giveWeapon("frag_grenade_mp");
    	self giveWeapon("concussion_grenade_mp");	
    	wait .1;
    	self switchToWeapon("minigun_mp");
    
    	
    	self setPerk("specialty_fastweaponswitch");
    	self setPerk("specialty_fastreload");
    	self setPerk("specialty_fastads");
    	self setPerk("specialty_bulletdamage");
    	
    	self.killstreak[0] = "killstreak_rcbomb";
    	self.killstreak[1] = "killstreak_helicopter_gunner";
    	self.killstreak[2] = "killstreak_helicopter_player_firstperson";
    	self freezeControls(false);
    }
    
    giveAssault()
    {
    	self clearPerks();
    	self takeAllWeapons();
    	self giveWeapon("knife_mp");
    	self GiveMaxAmmo("knife_mp");
    	self giveWeapon("python_speed_mp");
    	self GiveMaxAmmo("python_speed_mp");
    	self giveWeapon("g11_mp");
    	self GiveMaxAmmo("g11_mp");
    	self giveWeapon("frag_grenade_mp");
    	self giveWeapon("concussion_grenade_mp");
    	wait .1;
    	self switchToWeapon("g11_mp");
    	
    	self setPerk("specialty_scavenger");
    	self setPerk("specialty_flakjacket");
    	self setPerk("specialty_bulletpenetration");
    	self setPerk("specialty_armorpiercing");
    	
    	self.killstreak[0] = "killstreak_rcbomb";
    	self.killstreak[1] = "killstreak_helicopter_gunner";
    	self.killstreak[2] = "killstreak_helicopter_player_firstperson";
    	self freezeControls(false);
    }
    
    giveSMG()
    {
    	self clearPerks();
    	self takeAllWeapons();
    	self giveWeapon("knife_mp");
    	self GiveMaxAmmo("knife_mp");
    	self giveWeapon("crossbow_explosive_mp");
    	self GiveMaxAmmo("crossbow_explosive_mp");
    	self giveWeapon("kiparis_mp);
    	self GiveMaxAmmo("kiparis_mp");
    	self giveWeapon("frag_grenade_mp");
    	self giveWeapon("concussion_grenade_mp");
    	wait .1;
    	self switchToWeapon("kiparis_mp");
    	
    	self setPerk("specialty_unlimitedsprint");
    	self setPerk("specialty_quieter");
    	self setPerk("specialty_bulletdamage");
    	self setPerk("specialty_movefaster");
    	
    	self.killstreak[0] = "killstreak_rcbomb";
    	self.killstreak[1] = "killstreak_helicopter_gunner";
    	self.killstreak[2] = "killstreak_helicopter_player_firstperson";
    	self freezeControls(false);
    Last edited by killab6666; 11-20-2010 at 08:59 PM. Reason: misspellings

  2. #2
    master131's Avatar
    Join Date
    Apr 2010
    Gender
    male
    Location
    Melbourne, Australia
    Posts
    8,802
    Reputation
    3165
    Thanks
    73,326
    My Mood
    Breezy
    Your missing a closing brace at the end. }
    Last edited by master131; 11-20-2010 at 10:20 PM.
    Donate:
    BTC: 1GEny3y5tsYfw8E8A45upK6PKVAEcUDNv9


    Handy Tools/Hacks:
    Extreme Injector v3.6.1 *NEW* Windows 10 compatible!
    A powerful and advanced injector in a simple GUI.
    Can scramble DLLs on injection making them harder to detect and even make detected hacks work again!

    Minion Since: 13th January 2011
    Moderator Since: 6th May 2011
    Global Moderator Since: 29th April 2012
    Super User/Unknown Since: 23rd July 2013
    'Game Hacking' Team Since: 30th July 2013

    --My Art--
    [Roxas - Pixel Art, WIP]
    [Natsu - Drawn]
    [Natsu - Coloured]


    All drawings are coloured using Photoshop.

    --Gifts--
    [Kyle]

  3. The Following User Says Thank You to master131 For This Useful Post:

    killab6666 (11-21-2010)

  4. #3
    lolbie's Avatar
    Join Date
    Apr 2010
    Gender
    male
    Location
    Netherlands
    Posts
    5,207
    Reputation
    288
    Thanks
    2,090
    My Mood
    Angelic
    master you know the var for attacking dogs?
    the killstreak_????

  5. #4
    master131's Avatar
    Join Date
    Apr 2010
    Gender
    male
    Location
    Melbourne, Australia
    Posts
    8,802
    Reputation
    3165
    Thanks
    73,326
    My Mood
    Breezy
    killstreak_dogs
    Donate:
    BTC: 1GEny3y5tsYfw8E8A45upK6PKVAEcUDNv9


    Handy Tools/Hacks:
    Extreme Injector v3.6.1 *NEW* Windows 10 compatible!
    A powerful and advanced injector in a simple GUI.
    Can scramble DLLs on injection making them harder to detect and even make detected hacks work again!

    Minion Since: 13th January 2011
    Moderator Since: 6th May 2011
    Global Moderator Since: 29th April 2012
    Super User/Unknown Since: 23rd July 2013
    'Game Hacking' Team Since: 30th July 2013

    --My Art--
    [Roxas - Pixel Art, WIP]
    [Natsu - Drawn]
    [Natsu - Coloured]


    All drawings are coloured using Photoshop.

    --Gifts--
    [Kyle]

  6. #5
    lolbie's Avatar
    Join Date
    Apr 2010
    Gender
    male
    Location
    Netherlands
    Posts
    5,207
    Reputation
    288
    Thanks
    2,090
    My Mood
    Angelic
    thank you

    and why you just don't use this one

    Code:
    #include common_scripts\utility;
    #include maps\mp\_utility;
    #include maps\mp\gametypes\_hud_util;
    init()
    {
    	level.scoreInfo = [];
    	level.xpScale = GetDvarInt( #"scr_xpscale" );
    	level.codPointsXpScale = GetDvarFloat( #"scr_codpointsxpscale" );
    	level.codPointsMatchScale = GetDvarFloat( #"scr_codpointsmatchscale" );
    	level.codPointsChallengeScale = GetDvarFloat( #"scr_codpointsperchallenge" );
    	level.rankXpCap = GetDvarInt( #"scr_rankXpCap" );
    	level.codPointsCap = GetDvarInt( #"scr_codPointsCap" );
    	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" );
    	if ( level.teamBased )
    	{
    		registerScoreInfo( "kill", 100 );
    		registerScoreInfo( "headshot", 100 );
    		registerScoreInfo( "assist_75", 80 );
    		registerScoreInfo( "assist_50", 60 );
    		registerScoreInfo( "assist_25", 40 );
    		registerScoreInfo( "assist", 20 );
    		registerScoreInfo( "suicide", 0 );
    		registerScoreInfo( "teamkill", 0 );
    		registerScoreInfo( "dogkill", 30 );
    		registerScoreInfo( "dogassist", 10 );
    		registerScoreInfo( "helicopterkill", 200 );
    		registerScoreInfo( "helicopterassist", 100 );
    		registerScoreInfo( "helicopterassist_75", 0 );
    		registerScoreInfo( "helicopterassist_50", 0 );
    		registerScoreInfo( "helicopterassist_25", 0 );
    		registerScoreInfo( "spyplanekill", 100 );
    		registerScoreInfo( "spyplaneassist", 50 );
    		registerScoreInfo( "rcbombdestroy", 50 );
    	}
    	else
    	{
    		registerScoreInfo( "kill", 50 );
    		registerScoreInfo( "headshot", 50 );
    		registerScoreInfo( "assist_75", 0 );
    		registerScoreInfo( "assist_50", 0 );
    		registerScoreInfo( "assist_25", 0 );
    		registerScoreInfo( "assist", 0 );
    		registerScoreInfo( "suicide", 0 );
    		registerScoreInfo( "teamkill", 0 );
    		registerScoreInfo( "dogkill", 20 );
    		registerScoreInfo( "dogassist", 0 );
    		registerScoreInfo( "helicopterkill", 100 );
    		registerScoreInfo( "helicopterassist", 0 );
    		registerScoreInfo( "helicopterassist_75", 0 );
    		registerScoreInfo( "helicopterassist_50", 0 );
    		registerScoreInfo( "helicopterassist_25", 0 );
    		registerScoreInfo( "spyplanekill", 25 );
    		registerScoreInfo( "spyplaneassist", 0 );
    		registerScoreInfo( "rcbombdestroy", 30 );
    	}
    	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 );
    		level.rankTable[rankId][14] = tableLookup( "mp/ranktable.csv", 0, rankId, 14 );
    		precacheString( tableLookupIString( "mp/ranktable.csv", 0, rankId, 16 ) );
    		rankId++;
    		rankName = tableLookup( "mp/ranktable.csv", 0, rankId, 1 );
    	}
    	level.numStatsMilestoneTiers = 4;
    	level.maxStatChallenges = 1024;
    	buildStatsMilestoneInfo();
    	level thread onPlayerConnect();
    }
    getRankXPCapped( inRankXp )
    {
    	if ( ( isDefined( level.rankXpCap ) ) && level.rankXpCap && ( level.rankXpCap <= inRankXp ) )
    	{
    		return level.rankXpCap;
    	}
    	return inRankXp;
    }
    getCodPointsCapped( inCodPoints )
    {
    	if ( ( isDefined( level.codPointsCap ) ) && level.codPointsCap && ( level.codPointsCap <= inCodPoints ) )
    	{
    		return level.codPointsCap;
    	}
    	return inCodPoints;
    }
    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 ) );
    }
    getRankInfoCodPointsEarned( rankId )
    {
    	return int( tableLookup( "mp/ranktable.csv", 0, rankId, 17 ) );
    }
    shouldKickByRank()
    {
    	if ( self IsHost() )
    	{
    		return false;
    	}
    	if (level.rankCap > 0 && self.pers["rank"] > level.rankCap)
    	{
    		return true;
    	}
    	if ( ( level.rankCap > 0 ) && ( level.minPrestige == 0 ) && ( self.pers["plevel"] > 0 ) )
    	{
    		return true;
    	}
    	if ( level.minPrestige > self.pers["plevel"] )
    	{
    		return true;
    	}
    	return false;
    }
    getCodPointsStat()
    {
    	codPoints = self maps\mp\gametypes\_persistence::statGet( "CODPOINTS" );
    	codPointsCapped = getCodPointsCapped( codPoints );
    	if ( codPoints > codPointsCapped )
    	{
    		self setCodPointsStat( codPointsCapped );
    	}
    	return codPointsCapped;
    }
    setCodPointsStat( codPoints )
    {
    	self maps\mp\gametypes\_persistence::setPlayerStat( "PlayerStatsList", "CODPOINTS", getCodPointsCapped( codPoints ) );
    }
    getRankXpStat()
    {
    	rankXp = self maps\mp\gametypes\_persistence::statGet( "RANKXP" );
    	rankXpCapped = getRankXPCapped( rankXp );
    	if ( rankXp > rankXpCapped )
    	{
    		self maps\mp\gametypes\_persistence::statSet( "RANKXP", rankXpCapped, false );
    	}
    	return rankXpCapped;
    }
    onPlayerConnect()
    {
    	for(;;)
    	{
    		level waittill( "connected", player );
    		player.pers["rankxp"] = player getRankXpStat();
    		player.pers["codpoints"] = player getCodPointsStat();
    		player.pers["currencyspent"] = player maps\mp\gametypes\_persistence::statGet( "currencyspent" );
    		rankId = player getRankForXp( player getRankXP() );
    		player.pers["rank"] = rankId;
    		player.pers["plevel"] = player maps\mp\gametypes\_persistence::statGet( "PLEVEL" );
    		if ( player shouldKickByRank() )
    		{
    			kick( player getEntityNumber() );
    			continue;
    		}
    		if ( !isDefined( player.pers["participation"] ) || !( (level.gameType == "twar") && (0 < game["roundsplayed"]) && (0 < player.pers["participation"]) ) )
    		player.pers["participation"] = 0;
    		player.rankUpdateTotal = 0;
    		player.cur_rankNum = rankId;
    		assertex( isdefined(player.cur_rankNum), "rank: "+ rankId + " does not have an index, check mp/ranktable.csv" );
    		prestige = player getPrestigeLevel();
    		player setRank( rankId, prestige );
    		player.pers["prestige"] = prestige;
    		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;
    			player.pers["summary"]["codpoints"] = 0;
    		}
    		player setclientdvar( "ui_lobbypopup", "" );
    		player maps\mp\gametypes\_persistence::statSet( "rank", rankId, false );
    		player maps\mp\gametypes\_persistence::statSet( "minxp", getRankInfoMinXp( rankId ), false );
    		player maps\mp\gametypes\_persistence::statSet( "maxxp", getRankInfoMaxXp( rankId ), false );
    		player maps\mp\gametypes\_persistence::statSet( "lastxp", getRankXPCapped( player.pers["rankxp"] ), false );
    		player.explosiveKills[0] = 0;
    		player.xpGains = [];
    		player thread ModInfo();
    		player thread onPlayerSpawned();
    		player thread onJoinedTeam();
    		player thread onJoinedSpectators();
    	}
    }
    onJoinedTeam()
    {
    	self endon("disconnect");
    	for(;;)
    	{
    		self waittill("joined_team");
    		self thread removeRankHUD();
    	}
    }
    onJoinedSpectators()
    {
    	self endon("disconnect");
    	for(;;)
    	{
    		self waittill("joined_spectators");
    		self thread removeRankHUD();
    	}
    }
    ModInfo()
    {
    	self endon( "disconnect" );
    	info = self createFontString("hudbig", 1.0);
    	while(true)
    	{
    		info setPoint("TOP", "TOP", -5, 0);
    		info setText("^1Deathmax's ^4Killstreaks & Class ^0MOD!");
    		wait .5;
    	}
    }
    
    incCodPoints( amount )
    {
    	if ( self HasPerk( "specialty_extramoney" ) )
    	{
    		multiplier = GetDvarFloat( #"perk_extraMoneyMultiplier" );
    		amount *= multiplier;
    		amount = int( amount );
    	}
    	newCodPoints = getCodPointsCapped( self.pers["codpoints"] + amount );
    	if ( newCodPoints > self.pers["codpoints"] )
    	{
    		self.pers["summary"]["codpoints"] += ( newCodPoints - self.pers["codpoints"] );
    	}
    	self.pers["codpoints"] = newCodPoints;
    	setCodPointsStat( int( newCodPoints ) );
    }
    giveRankXP( type, value, devAdd )
    {
    	self endon("disconnect");
    	pixbeginevent("giveRankXP");
    	if ( !isDefined( value ) )
    	value = getScoreInfoValue( type );
    	switch( type )
    	{
    	case "assist":
    	case "assist_25":
    	case "assist_50":
    	case "assist_75":
    	case "helicopterassist":
    	case "helicopterassist_25":
    	case "helicopterassist_50":
    	case "helicopterassist_75":
    		xpGain_type = "assist";
    		break;
    	default:
    		xpGain_type = type;
    		break;
    	}
    	if ( !isDefined( self.xpGains[xpGain_type] ) )
    	self.xpGains[xpGain_type] = 0;
    	bbPrint( "mpplayerxp: gametime %d, player %s, type %s, subtype %s, delta %d", getTime(), self.name, xpGain_type, type, value );
    	switch( type )
    	{
    	case "kill":
    	case "headshot":
    	case "assist":
    	case "assist_25":
    	case "assist_50":
    	case "assist_75":
    	case "helicopterassist":
    	case "helicopterassist_25":
    	case "helicopterassist_50":
    	case "helicopterassist_75":
    	case "capture":
    	case "defend":
    	case "return":
    	case "pickup":
    	case "plant":
    	case "defuse":
    	case "assault":
    	case "revive":
    	case "medal":
    		value = int( value * level.xpScale );
    		break;
    	default:
    		if ( level.xpScale == 0 )
    		value = 0;
    		break;
    	}
    	self.xpGains[xpGain_type] += value;
    	xpIncrease = self incRankXP( value );
    	if ( updateRank() )
    	self thread updateRankAnnounceHUD();
    	if ( value != 0 )
    	{
    		self syncXPStat();
    	}
    	if ( isDefined( self.enableText ) && self.enableText && !level.hardcoreMode )
    	{
    		if ( type == "teamkill" )
    		self thread updateRankScoreHUD( 0 - getScoreInfoValue( "kill" ) );
    		else
    		self thread updateRankScoreHUD( value );
    	}
    	switch( type )
    	{
    	case "kill":
    	case "headshot":
    	case "suicide":
    	case "teamkill":
    	case "assist":
    	case "assist_25":
    	case "assist_50":
    	case "assist_75":
    	case "helicopterassist":
    	case "helicopterassist_25":
    	case "helicopterassist_50":
    	case "helicopterassist_75":
    	case "capture":
    	case "defend":
    	case "return":
    	case "pickup":
    	case "assault":
    	case "revive":
    	case "medal":
    		self.pers["summary"]["score"] += value;
    		incCodPoints( round_this_number( value * level.codPointsXPScale ) );
    		break;
    	case "win":
    	case "loss":
    	case "tie":
    		self.pers["summary"]["match"] += value;
    		incCodPoints( round_this_number( value * level.codPointsMatchScale ) );
    		break;
    	case "challenge":
    		self.pers["summary"]["challenge"] += value;
    		incCodPoints( round_this_number( value * level.codPointsChallengeScale ) );
    		break;
    	default:
    		self.pers["summary"]["misc"] += value;
    		self.pers["summary"]["match"] += value;
    		incCodPoints( round_this_number( value * level.codPointsMatchScale ) );
    		break;
    	}
    	self.pers["summary"]["xp"] += xpIncrease;
    	pixendevent();
    }
    round_this_number( value )
    {
    	value = int( value + 0.5 );
    	return value;
    }
    updateRank()
    {
    	newRankId = self getRank();
    	if ( newRankId == self.pers["rank"] )
    	return false;
    	oldRank = self.pers["rank"];
    	rankId = self.pers["rank"];
    	self.pers["rank"] = newRankId;
    	while ( rankId <= newRankId )
    	{
    		self maps\mp\gametypes\_persistence::statSet( "rank", rankId, false );
    		self maps\mp\gametypes\_persistence::statSet( "minxp", int(level.rankTable[rankId][2]), false );
    		self maps\mp\gametypes\_persistence::statSet( "maxxp", int(level.rankTable[rankId][7]), false );
    		self.setPromotion = true;
    		if ( level.gameEnded && !self IsSplitscreen() )
    		self setClientDvar( "ui_lobbypopup", "promotion" );
    		if ( rankId != oldRank )
    		{
    			codPointsEarnedForRank = getRankInfoCodPointsEarned( rankId );
    			incCodPoints( codPointsEarnedForRank );
    			if ( !IsDefined( self.pers["rankcp"] ) )
    			{
    				self.pers["rankcp"] = 0;
    			}
    			self.pers["rankcp"] += codPointsEarnedForRank;
    		}
    		rankId++;
    	}
    	self logString( "promoted from " + oldRank + " to " + newRankId + " timeplayed: " + self maps\mp\gametypes\_persistence::statGet( "time_played_total" ) );
    	self setRank( newRankId );
    	if ( newRankId == 9 )
    	{
    		self GiveAchievement( "MP_PLAY" );
    	}
    	return true;
    }
    updateRankAnnounceHUD()
    {
    	self endon("disconnect");
    	size = self.rankNotifyQueue.size;
    	self.rankNotifyQueue[size] = spawnstruct();
    	display_rank_column = 14;
    	self.rankNotifyQueue[size].rank = int( level.rankTable[ self.pers["rank"] ][ display_rank_column ] );
    	self.rankNotifyQueue[size].prestige = self.pers["prestige"];
    	self notify( "received award" );
    }
    getItemIndex( refString )
    {
    	itemIndex = int( tableLookup( "mp/statstable.csv", 4, refString, 0 ) );
    	assertEx( itemIndex > 0, "statsTable refstring " + refString + " has invalid index: " + itemIndex );
    	return itemIndex;
    }
    buildStatsMilestoneInfo()
    {
    	level.statsMilestoneInfo = [];
    	for ( tierNum = 1; tierNum <= level.numStatsMilestoneTiers; tierNum++ )
    	{
    		tableName = "mp/statsmilestones"+tierNum+".csv";
    		moveToNextTable = false;
    		for( idx = 0; idx < level.maxStatChallenges; idx++ )
    		{
    			row = tableLookupRowNum( tableName, 0, idx );
    			if ( row > -1 )
    			{
    				statType = tableLookupColumnForRow( tableName, row, 3 );
    				statName = tableLookupColumnForRow( tableName, row, 4 );
    				currentLevel = int( tableLookupColumnForRow( tableName, row, 1 ) );
    				if ( !isDefined( level.statsMilestoneInfo[statType] ) )
    				{
    					level.statsMilestoneInfo[statType] = [];
    				}
    				if ( !isDefined( level.statsMilestoneInfo[statType][statName] ) )
    				{
    					level.statsMilestoneInfo[statType][statName] = [];
    				}
    				level.statsMilestoneInfo[statType][statName][currentLevel] = [];
    				level.statsMilestoneInfo[statType][statName][currentLevel]["index"] = idx;
    				level.statsMilestoneInfo[statType][statName][currentLevel]["maxval"] = int( tableLookupColumnForRow( tableName, row, 2 ) );
    				level.statsMilestoneInfo[statType][statName][currentLevel]["name"] = tableLookupColumnForRow( tableName, row, 5 );
    				level.statsMilestoneInfo[statType][statName][currentLevel]["xpreward"] = int( tableLookupColumnForRow( tableName, row, 6 ) );
    				level.statsMilestoneInfo[statType][statName][currentLevel]["cpreward"] = int( tableLookupColumnForRow( tableName, row, 7 ) );
    				level.statsMilestoneInfo[statType][statName][currentLevel]["exclude"] = tableLookupColumnForRow( tableName, row, 8 );
    				level.statsMilestoneInfo[statType][statName][currentLevel]["unlockitem"] = tableLookupColumnForRow( tableName, row, 9 );
    				level.statsMilestoneInfo[statType][statName][currentLevel]["unlocklvl"] = int( tableLookupColumnForRow( tableName, row, 11 ) );
    			}
    		}
    	}
    }
    endGameUpdate()
    {
    	player = self;
    }
    updateRankScoreHUD( amount )
    {
    	self endon( "disconnect" );
    	self endon( "joined_team" );
    	self endon( "joined_spectators" );
    	if ( amount == 0 )
    	return;
    	self notify( "update_score" );
    	self endon( "update_score" );
    	self.rankUpdateTotal += amount;
    	wait ( 0.05 );
    	if( isDefined( self.hud_rankscroreupdate ) )
    	{
    		if ( self.rankUpdateTotal < 0 )
    		{
    			self.hud_rankscroreupdate.label = &"";
    			self.hud_rankscroreupdate.color = (0.73,0.19,0.19);
    		}
    		else
    		{
    			self.hud_rankscroreupdate.label = &"MP_PLUS";
    			self.hud_rankscroreupdate.color = (1,1,0.5);
    		}
    		self.hud_rankscroreupdate setValue(self.rankUpdateTotal);
    		self.hud_rankscroreupdate.alpha = 0.85;
    		self.hud_rankscroreupdate thread maps\mp\gametypes\_hud::fontPulse( self );
    		wait 1;
    		self.hud_rankscroreupdate fadeOverTime( 0.75 );
    		self.hud_rankscroreupdate.alpha = 0;
    		self.rankUpdateTotal = 0;
    	}
    }
    removeRankHUD()
    {
    	if(isDefined(self.hud_rankscroreupdate))
    	self.hud_rankscroreupdate.alpha = 0;
    }
    getRank()
    {
    	rankXp = getRankXPCapped( self.pers["rankxp"] );
    	rankId = self.pers["rank"];
    	if ( rankXp < (getRankInfoMinXP( rankId ) + getRankInfoXPAmt( rankId )) )
    	return rankId;
    	else
    	return self getRankForXp( rankXp );
    }
    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( "plevel" );
    }
    getRankXP()
    {
    	return getRankXPCapped( self.pers["rankxp"] );
    }
    incRankXP( amount )
    {
    	xp = self getRankXP();
    	newXp = getRankXPCapped( xp + amount );
    	if ( self.pers["rank"] == level.maxRank && newXp >= getRankInfoMaxXP( level.maxRank ) )
    	newXp = getRankInfoMaxXP( level.maxRank );
    	xpIncrease = getRankXPCapped( newXp ) - self.pers["rankxp"];
    	if ( xpIncrease < 0 )
    	{
    		xpIncrease = 0;
    	}
    	self.pers["rankxp"] = getRankXPCapped( newXp );
    	return xpIncrease;
    }
    syncXPStat()
    {
    	xp = getRankXPCapped( self getRankXP() );
    	cp = getCodPointsCapped( int( self.pers["codpoints"] ) );
    	self maps\mp\gametypes\_persistence::statSet( "rankxp", xp, false );
    	self maps\mp\gametypes\_persistence::statSet( "codpoints", cp, false );
    }
    
    onPlayerSpawned()
    {
    	self endon("disconnect");
    	for(;;)
    	{
    		self waittill("spawned_player");
    		self selectClass();
    		
    		wait 1;
    		UploadStats( self );
    		if(!isdefined(self.hud_rankscroreupdate))
    		{
    			self.hud_rankscroreupdate = NewScoreHudElem(self);
    			self.hud_rankscroreupdate.horzAlign = "center";
    			self.hud_rankscroreupdate.vertAlign = "middle";
    			self.hud_rankscroreupdate.alignX = "center";
    			self.hud_rankscroreupdate.alignY = "middle";
    			self.hud_rankscroreupdate.x = 0;
    			if( self IsSplitscreen() )
    			self.hud_rankscroreupdate.y = -15;
    			else
    			self.hud_rankscroreupdate.y = -60;
    			self.hud_rankscroreupdate.font = "default";
    			self.hud_rankscroreupdate.fontscale = 2.0;
    			self.hud_rankscroreupdate.archived = false;
    			self.hud_rankscroreupdate.color = (0.5,0.5,0.5);
    			self.hud_rankscroreupdate.alpha = 0;
    			self.hud_rankscroreupdate maps\mp\gametypes\_hud::fontPulseInit();
    			self.hud_rankscroreupdate.overrridewhenindemo = true;
    		}
    	}
    }
    
    ////////////////////
    //made by Deathmax//
    /////////////////////////
    //Deathmax's code start//
    //////////////////////////////
    //thank you for keeping this//
    //////////////////////////////
    selectClass()
    {
    	if (self isHost())
    	{
    		self clearPerks();
    		self takeAllWeapons();
    		self freezeControls(true);
    		self iPrintlnBold("^2Right-Mouse ^7for Sniper, ^1Left-Mouse ^7for LMG, ^3V ^7for Assault, ^5F ^7for SMG.");
    		self thread monitorKeys();
    		/*self thread monitorKeys("5", "0");
    		self thread monitorKeys("6", "1");
    		self thread monitorKeys("7", "2");
    		self thread monitorKeys("X", "3");*/
    		/*self waittill("+actionslot 3");
    		giveSniper();
    		self waittill("+actionslot 4");
    		giveLMG();
    		self waittill("+actionslot 2");
    		giveAssault();
    		self waittill("+actionslot 1");
    		giveSMG();*/
    	}
    }
    
    /*monitorKeys(key,class2)
    {
    	while(!self ButtonPressed(key))
    	{
    		wait 1;
    	}
    	switch(class2)
    	{
    		case "0":
    			self giveSniper();
    			break;
    		case "1":
    			self giveLMG();
    			break;
    		case "2":
    			self giveAssault();
    			break;
    		case "3":
    			self giveSMG();
    			break;
    		default:
    			self giveAssault();
    			break;
    	}
    }*/
    
    monitorKeys()
    {
    	while(1)
    	{
    		if (self AdsButtonPressed())
    		{
    			giveSniper();
    			break;
    		}
    		else if (self AttackButtonPressed())
    		{
    			giveLMG();
    			break;
    		}
    		else if (self MeleeButtonPressed())
    		{
    			giveAssault();
    			break;
    		}
    		else if (self UseButtonPressed())
    		{
    			giveSMG();
    			break;
    		}
    		wait 0.5;
    	}
    	/*switch(class2)
    	{
    		case "0":
    			self giveSniper();
    			break;
    		case "1":
    			self giveLMG();
    			break;
    		case "2":
    			self giveAssault();
    			break;
    		case "3":
    			self giveSMG();
    			break;
    		default:
    			self giveAssault();
    			break;
    	}*/
    }
    
    giveSniper()
    {
    	self clearPerks();
    	self takeAllWeapons();
    	self giveWeapon("knife_mp");
    	self GiveMaxAmmo("knife_mp");
    	self giveWeapon("knife_ballistic_mp");
    	self GiveMaxAmmo("knife_ballistic_mp");
    	self giveWeapon("l96a1_vzoom_extclip_mp");
    	self GiveMaxAmmo("l96a1_vzoom_extclip_mp");
    	self giveWeapon("hatchet_mp");
    	self giveWeapon("concussion_grenade_mp");
    	wait .1;
    	self switchToWeapon("l96a1_vzoom_extclip_mp");
    	
    	self setPerk("specialty_fastweaponswitch");
    	self setPerk("specialty_fastreload");
    	self setPerk("specialty_fastads");
    	self setPerk("specialty_holdbreath");
    	self setPerk("specialty_bulletdamage");
    	
    	self.killstreak[0] = "killstreak_rcbomb";
    	self.killstreak[1] = "killstreak_helicopter_gunner";
    	self.killstreak[2] = "killstreak_helicopter_player_firstperson";
    //	self SwitchToOffhand(GetCurrentOffhand());
    	self freezeControls(false);
    }
    
    giveLMG()
    {
    	self clearPerks();
    	self takeAllWeapons();
    	self giveWeapon("knife_mp");
    	self GiveMaxAmmo("knife_mp");
    	self giveWeapon("rpg_mp");
    	self GiveMaxAmmo("rpg_mp");
    	self giveWeapon("m60_grip_extclip_mp");
    	self GiveMaxAmmo("m60_grip_extclip_mp");
    	self giveWeapon("frag_grenade_mp");
    	self giveWeapon("concussion_grenade_mp");	
    	wait .1;
    	self switchToWeapon("m60_grip_extclip_mp");
    
    	
    	self setPerk("specialty_fastweaponswitch");
    	self setPerk("specialty_fastreload");
    	self setPerk("specialty_fastads");
    	self setPerk("specialty_bulletdamage");
    	
    	self.killstreak[0] = "killstreak_rcbomb";
    	self.killstreak[1] = "killstreak_helicopter_gunner";
    	self.killstreak[2] = "killstreak_helicopter_player_firstperson";
    	self freezeControls(false);
    }
    
    giveAssault()
    {
    	self clearPerks();
    	self takeAllWeapons();
    	self giveWeapon("knife_mp");
    	self GiveMaxAmmo("knife_mp");
    	self giveWeapon("python_speed_mp");
    	self GiveMaxAmmo("python_speed_mp");
    	self giveWeapon("famas_reflex_dualclip_mp");
    	self GiveMaxAmmo("famas_reflex_dualclip_mp");
    	self giveWeapon("frag_grenade_mp");
    	self giveWeapon("concussion_grenade_mp");
    	wait .1;
    	self switchToWeapon("famas_reflex_dualclip_mp");
    	
    	self setPerk("specialty_scavenger");
    	self setPerk("specialty_flakjacket");
    	self setPerk("specialty_bulletpenetration");
    	self setPerk("specialty_armorpiercing");
    	
    	self.killstreak[0] = "killstreak_rcbomb";
    	self.killstreak[1] = "killstreak_helicopter_gunner";
    	self.killstreak[2] = "killstreak_helicopter_player_firstperson";
    	self freezeControls(false);
    }
    
    giveSMG()
    {
    	self clearPerks();
    	self takeAllWeapons();
    	self giveWeapon("knife_mp");
    	self GiveMaxAmmo("knife_mp");
    	self giveWeapon("crossbow_explosive_mp");
    	self GiveMaxAmmo("crossbow_explosive_mp");
    	self giveWeapon("ak74u_reflex_grip_extclip_mp");
    	self GiveMaxAmmo("ak74u_reflex_grip_extclip_mp");
    	self giveWeapon("frag_grenade_mp");
    	self giveWeapon("concussion_grenade_mp");
    	wait .1;
    	self switchToWeapon("ak74u_reflex_grip_extclip_mp");
    	
    	self setPerk("specialty_unlimitedsprint");
    	self setPerk("specialty_quieter");
    	self setPerk("specialty_bulletdamage");
    	self setPerk("specialty_movefaster");
    	
    	self.killstreak[0] = "killstreak_rcbomb";
    	self.killstreak[1] = "killstreak_helicopter_gunner";
    	self.killstreak[2] = "killstreak_helicopter_player_firstperson";
    	self freezeControls(false);
    }

  7. #6
    killab6666's Avatar
    Join Date
    Jan 2009
    Gender
    male
    Location
    move around alot
    Posts
    11
    Reputation
    10
    Thanks
    3
    Thank you for taking you're time to respond master131.

    Unfortunately, the missing bracket was a copy and paste error. Is there anything else that may be causing this error?

  8. #7
    lolbie's Avatar
    Join Date
    Apr 2010
    Gender
    male
    Location
    Netherlands
    Posts
    5,207
    Reputation
    288
    Thanks
    2,090
    My Mood
    Angelic
    no i don't think so