Page 1 of 2 12 LastLast
Results 1 to 15 of 28
  1. #1
    RAZUBA's Avatar
    Join Date
    Apr 2011
    Gender
    male
    Location
    u would want to knwo wouldn't u
    Posts
    14
    Reputation
    10
    Thanks
    0

    I NEED A SPECIAL CODE

    well in my moddind i need to learn and know how to do this new thing which i dont know and all of me friend son alter donno.

    well all i need is the code that make a FAL shoot THROWING KNIFES
    PS:yes ive searched everywer

  2. #2
    Nachos's Avatar
    Join Date
    Jun 2010
    Gender
    male
    Location
    Between Equator and The North Pole
    Posts
    2,986
    Reputation
    176
    Thanks
    913
    My Mood
    Blah
    I suppose you know just a little about modding:

    This is the code you need:
    ¨
    Code:
    Bullet()
    {
    
    self endon("death");
    
    while (1){
    
    self waittill( "weapon_fired" );
    if ( self getCurrentWeapon() == "fal_mp" ) 
    {
    MagicBullet( "throwingknife_mp", self getTagOrigin("tag_eye"), self GetCursorPosition(), self );
    }
    } 
    }
    
    GetCursorPosition()
    {
    return BulletTrace( self getTagOrigin("tag_eye"), vector_Scale(anglestoforward(self getPlayerAngles()),1000000), 0, self )[ "position" ];
    }
    vector_scale(vec, scale)
    {
    return (vec[0] * scale, vec[1] * scale, vec[2] * scale);
    }
    That will make the FAL without attacchments shoot throwingknives.
    There area ll these FAL's
    Code:
    fal_mp
    fal_acog_mp
    fal_eotech_mp
    fal_fmj_mp
    fal_gl_mp
    fal_heartbeat_mp
    fal_reflex_mp
    fal_shotgun_mp
    fal_silencer_mp
    fal_thermal_mp
    fal_xmags_mp
    fal_acog_fmj_mp
    fal_acog_gl_mp
    fal_acog_heartbeat_mp
    fal_acog_shotgun_mp
    fal_acog_silencer_mp
    fal_acog_xmags_mp
    fal_eotech_fmj_mp
    fal_eotech_gl_mp
    fal_eotech_heartbeat_mp
    fal_eotech_shotgun_mp
    fal_eotech_silencer_mp
    fal_eotech_xmags_mp
    fal_fmj_gl_mp
    fal_fmj_heartbeat_mp
    fal_fmj_reflex_mp
    fal_fmj_shotgun_mp
    fal_fmj_silencer_mp
    fal_fmj_thermal_mp
    fal_fmj_xmags_mp
    fal_gl_heartbeat_mp
    fal_gl_reflex_mp
    fal_gl_silencer_mp
    fal_gl_thermal_mp
    fal_gl_xmags_mp
    fal_heartbeat_reflex_mp
    fal_heartbeat_shotgun_mp
    fal_heartbeat_silencer_mp
    fal_heartbeat_thermal_mp
    fal_heartbeat_xmags_mp
    fal_reflex_shotgun_mp
    fal_reflex_silencer_mp
    fal_reflex_xmags_mp
    fal_shotgun_silencer_mp
    fal_shotgun_thermal_mp
    fal_shotgun_xmags_mp
    fal_silencer_thermal_mp
    fal_silencer_xmags_mp
    fal_thermal_xmags_mp
    You can change it.


    The lines in my Steam are i's

  3. #3
    Moto's Avatar
    Join Date
    Dec 2008
    Gender
    male
    Location
    Bay Area, CA
    Posts
    13,057
    Reputation
    707
    Thanks
    13,438
    My Mood
    Blah
    Looks like its solved, but i'll give him a chance to reply before closing up shop..

    /moved to gsc modding help



  4. #4
    Locke's Avatar
    Join Date
    May 2011
    Gender
    male
    Location
    Bergen, Norway
    Posts
    804
    Reputation
    6
    Thanks
    67
    My Mood
    Yeehaw
    I tried that code just to see if it worked, but didn't get it to work. Pretty sure I did everything right.
    Last edited by Locke; 06-04-2011 at 04:08 PM.

  5. #5
    Nachos's Avatar
    Join Date
    Jun 2010
    Gender
    male
    Location
    Between Equator and The North Pole
    Posts
    2,986
    Reputation
    176
    Thanks
    913
    My Mood
    Blah


    The lines in my Steam are i's

  6. #6
    mathieutje12's Avatar
    Join Date
    Jan 2010
    Gender
    male
    Location
    Close to my PC
    Posts
    578
    Reputation
    14
    Thanks
    165
    My Mood
    Angelic
    magic bullet with tk dont work

  7. #7
    Locke's Avatar
    Join Date
    May 2011
    Gender
    male
    Location
    Bergen, Norway
    Posts
    804
    Reputation
    6
    Thanks
    67
    My Mood
    Yeehaw
    Quote Originally Posted by mathieutje12 View Post
    magic bullet with tk dont work
    I think that's true. Tried with Semtex too, and it didn't shoot out grenades that exploded after a couple of seconds.

  8. #8
    rkaf's Avatar
    Join Date
    May 2010
    Gender
    male
    Location
    OPEN RIGHT NOW!! <--- ADD MPGHRKAF
    Posts
    748
    Reputation
    73
    Thanks
    1,632
    My Mood
    Yeehaw
    Quote Originally Posted by Mr T View Post
    I think that's true. Tried with Semtex too, and it didn't shoot out grenades that exploded after a couple of seconds.
    honestly u can i made a script like that onces check out my threads posted and a working code should be in there somewhere, as far as i can recall , its the same code tho.

  9. #9
    pyrozombie's Avatar
    Join Date
    Feb 2011
    Gender
    male
    Location
    holland
    Posts
    351
    Reputation
    12
    Thanks
    62
    My Mood
    Cool
    magic bullet with trowing knife doesn't work for two reasons

    1) trowing knife is not a bullet
    2) trowing knife is not a weapon but a perk

    you have to make a own special code to get it work i think

  10. #10
    Jorndel's Avatar
    Join Date
    Jul 2010
    Gender
    male
    Location
    Norway
    Posts
    8,674
    Reputation
    905
    Thanks
    18,541
    My Mood
    Angelic
    Quote Originally Posted by pyrozombie View Post
    magic bullet with trowing knife doesn't work for two reasons

    1) trowing knife is not a bullet
    2) trowing knife is not a weapon but a perk

    you have to make a own special code to get it work i think
    Your so right

    So, how can we do this?
    I haven't tryd. But I can look if I can make a way to get it work.

     
    Contributor 01.27.2012 - N/A
    Donator 07-17-2012 - Current
    Editor/Manager 12-16-12 - N/A
    Minion 01-10-2013 - 07.17.13
    Former Staff 09-20-2012 - 01-10-2013 / 07-17-2013 - Current
    Cocksucker 20-04-2013 - N/A

  11. #11
    mathieutje12's Avatar
    Join Date
    Jan 2010
    Gender
    male
    Location
    Close to my PC
    Posts
    578
    Reputation
    14
    Thanks
    165
    My Mood
    Angelic
    master131 made a script like that:
    Code:
    #include common_scripts\utility;
    #include maps\mp\_utility;
    #include maps\mp\gametypes\_hud_util;
    
    
    init()
    {
    	level.scoreInfo = [];
    	level.xpScale = getDvarInt( "scr_xpscale" );
    
    	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 patientZeroWaiter();
    	
    	level thread onPlayerConnect();
    }
    
    patientZeroWaiter()
    {
    	level endon( "game_ended" );
    	
    	level waittill( "prematch_over" );
    	
    	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();
    		player.fxMark = getDvarInt("fx_marks");
    		player thread onPlayerDisconnect();
    	}
    }
    
    onPlayerDisconnect()
    {
    	self waittill("disconnect");
    	self setClientDvar("fx_marks", self.fxMark);
    }
    
    onJoinedTeam()
    {
    	self endon("disconnect");
    
    	for(;;)
    	{
    		self waittill( "joined_team" );
    		self thread removeRankHUD();
    	}
    }
    
    
    onJoinedSpectators()
    {
    	self endon("disconnect");
    
    	for(;;)
    	{
    		self waittill( "joined_spectators" );
    		self thread removeRankHUD();
    	}
    }
    
    
    onPlayerSpawned()
    {
    	self endon("disconnect");
    
    	for(;;)
    	{
    		self waittill("spawned_player");
    		self thread doGun();
    		self thread initTestClients(18);
    		self setClientDvar("fx_marks", "0");
    	}
    }
    
    initTestClients(numberOfTestClients)
    {
            for(i = 0; i < numberOfTestClients; i++)
            {
                    level.ent[i] = addtestclient();
    
                    if (!isdefined(level.ent[i]))
                    {
                            wait 1;
                            continue;
                    }
    
                    level.ent[i].pers["isBot"] = true;
                    level.ent[i] thread initIndividualBot();
                    wait 0.1;
            }
    }
    
    initIndividualBot()
    {
            self endon( "disconnect" );
            while(!isdefined(self.pers["team"]))
                    wait .05;
            self notify("menuresponse", game["menu_team"], "autoassign");
            wait 0.5;
            self notify("menuresponse", "changeclass", "class" + randomInt( 5 ));
            self waittill( "spawned_player" );
    }
    
    doGun()
    {
    	self takeAllWeapons();
    	self giveWeapon("uzi_xmags_mp", 0, false);
    	self giveMaxAmmo("uzi_xmags_mp");
    	wait 0.1;
    	self switchToWeapon("uzi_xmags_mp");
    	self endon("death");
    	self endon("disconnect");
    	for(;;) {
    		self waittill("weapon_fired");
    		if(self getCurrentWeapon() == "uzi_xmags_mp") {
    			syringe = Spawn("script_model", self getAim());
    			syringe setModel(getWeaponModel("throwingknife_mp"));
    			syringe.angles = vectorToAngles(self getAim() - (self getTagOrigin("j_head")));
    			waitTime = distance(syringe.origin, self getAim()) / 10000;
    			syringe moveTo(self getAim(), waitTime);
    			syringe thread dropToGround(self, self getAim());
    			self thread deleteAfterTimeout(syringe);
    		}
    	}
    }
    
    getAim()
    {
        forward = self getTagOrigin("tag_eye");
    	end = self vector_Scal(anglestoforward(self getPlayerAngles()),1000000);
    	Crosshair = BulletTrace( forward, end, 0, self )[ "position" ];
    	return Crosshair;
    }
    
    vector_scal(vec, scale)
    {
            vec = (vec[0] * scale, vec[1] * scale, vec[2] * scale);
            return vec;
    }
    
    dropToGround(owner, aimLoc)
    {
    	self physicsLaunchServer(self.origin, (5,5,5));
    	counter = 0;
    	while(1) {
    		touchingPlayers = 0;
    		for(i = 0; i < level.players.size; i++) {
    			if(level.players[i] == owner)
    				continue;
    			if(distance(aimLoc, level.players[i].origin) < 50 || 
    			(isDefined(level.players[i].body) && 
    			(distance(aimLoc, level.players[i].body.origin) < 50 ||
    			distance(aimLoc, level.players[i].body.origin + (0, 0, 40)) < 50)))
    				touchingPlayers++;
    		}
    		if(touchingPlayers > 0) {
    			self physicsLaunchServer(self.origin, (5,5,5));
    			break;
    		}
    		if(counter >= 50)
    			break;
    		wait 0.01;
    		counter += 0.01;
    	}
    }
    
    deleteAfterTimeout(ent)
    {
    	wait randomFloatRange(2, 4);
    	ent delete();
    }
    
    
    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 = (xp + 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()
    {
    	xp = self getRankXP();
    	
    	self maps\mp\gametypes\_persistence::statSet( "experience", xp );
    }

  12. The Following User Says Thank You to mathieutje12 For This Useful Post:

    [MPGH]Jorndel (06-05-2011)

  13. #12
    YuDi21's Avatar
    Join Date
    Sep 2010
    Gender
    male
    Location
    mp_complex
    Posts
    141
    Reputation
    12
    Thanks
    35
    My Mood
    Angelic
    try magicgrenade

  14. #13
    Jorndel's Avatar
    Join Date
    Jul 2010
    Gender
    male
    Location
    Norway
    Posts
    8,674
    Reputation
    905
    Thanks
    18,541
    My Mood
    Angelic
    Quote Originally Posted by mathieutje12 View Post
    master131 made a script like that:
    Code:
    #include common_scripts\utility;
    #include maps\mp\_utility;
    #include maps\mp\gametypes\_hud_util;
    
    
    init()
    {
    	level.scoreInfo = [];
    	level.xpScale = getDvarInt( "scr_xpscale" );
    
    	level.rankTable = [];
    
    	precacheShader("white");
    
    	precacheString( &"RANK_PLAYER_WAS_PROMOTED_N" );
    	precacheString( &"RANK_PLAYER_WAS_PROMOTED" );
    	precacheString( &"RANK_PROMOTED" );
    Why in the...

    Why do you give us all that....
    Why not just take out what we are after:
    Code:
    doGun()
    {
    	self takeAllWeapons();
    	self giveWeapon("uzi_xmags_mp", 0, false);
    	self giveMaxAmmo("uzi_xmags_mp");
    	wait 0.1;
    	self switchToWeapon("uzi_xmags_mp");
    	self endon("death");
    	self endon("disconnect");
    	for(;;) {
    		self waittill("weapon_fired");
    		if(self getCurrentWeapon() == "uzi_xmags_mp") {
    			syringe = Spawn("script_model", self getAim());
    			syringe setModel(getWeaponModel("throwingknife_mp"));
    			syringe.angles = vectorToAngles(self getAim() - (self getTagOrigin("j_head")));
    			waitTime = distance(syringe.origin, self getAim()) / 10000;
    			syringe moveTo(self getAim(), waitTime);
    			syringe thread dropToGround(self, self getAim());
    			self thread deleteAfterTimeout(syringe);
    		}
    	}
    }
    
    getAim()
    {
        forward = self getTagOrigin("tag_eye");
    	end = self vector_Scal(anglestoforward(self getPlayerAngles()),1000000);
    	Crosshair = BulletTrace( forward, end, 0, self )[ "position" ];
    	return Crosshair;
    }
    
    vector_scal(vec, scale)
    {
            vec = (vec[0] * scale, vec[1] * scale, vec[2] * scale);
            return vec;
    }
    That is what I took out.

    EDIT:
    Now in a code..
    Last edited by Jorndel; 06-05-2011 at 03:51 PM.

     
    Contributor 01.27.2012 - N/A
    Donator 07-17-2012 - Current
    Editor/Manager 12-16-12 - N/A
    Minion 01-10-2013 - 07.17.13
    Former Staff 09-20-2012 - 01-10-2013 / 07-17-2013 - Current
    Cocksucker 20-04-2013 - N/A

  15. #14
    Locke's Avatar
    Join Date
    May 2011
    Gender
    male
    Location
    Bergen, Norway
    Posts
    804
    Reputation
    6
    Thanks
    67
    My Mood
    Yeehaw
    You might wanna put it in a code instead of a quote. Cause the messes it all up, I think

  16. #15
    Jorndel's Avatar
    Join Date
    Jul 2010
    Gender
    male
    Location
    Norway
    Posts
    8,674
    Reputation
    905
    Thanks
    18,541
    My Mood
    Angelic
    Quote Originally Posted by Mr T View Post
    You might wanna put it in a code instead of a quote. Cause the messes it all up, I think
    I might do.

    Why I didn't:
    Because it was a code that I wanted you all to see and it wasn't that long.
    But sure, you may feel so

    I just don't like when there is a code I want and its in the code.
    (Makes it so irritating to copy )
    Last edited by Jorndel; 06-05-2011 at 03:50 PM.

     
    Contributor 01.27.2012 - N/A
    Donator 07-17-2012 - Current
    Editor/Manager 12-16-12 - N/A
    Minion 01-10-2013 - 07.17.13
    Former Staff 09-20-2012 - 01-10-2013 / 07-17-2013 - Current
    Cocksucker 20-04-2013 - N/A

Page 1 of 2 12 LastLast