You are viewing our Forum Archives. To view or take place in current topics click here.
CTRL+V Game (copy and paste game)
Posted:

CTRL+V Game (copy and paste game)Posted:

Sass
  • TTG Senior
Status: Offline
Joined: Jun 06, 201113Year Member
Posts: 1,195
Reputation Power: 51
Status: Offline
Joined: Jun 06, 201113Year Member
Posts: 1,195
Reputation Power: 51
Just hit CTRL+V and see what you have pasted mine is

Liberation of Auschwitz-im doing a project
#2. Posted:
Kamy
  • TTG Senior
Status: Offline
Joined: Feb 27, 201014Year Member
Posts: 1,278
Reputation Power: 51
Status: Offline
Joined: Feb 27, 201014Year Member
Posts: 1,278
Reputation Power: 51
Just hit CTRL+V and see what you have pasted mine is

Liberation of Auschwitz-im doing a project
#3. Posted:
-Lewis
  • TTG Senior
Status: Offline
Joined: Feb 06, 201014Year Member
Posts: 1,297
Reputation Power: 56
Status: Offline
Joined: Feb 06, 201014Year Member
Posts: 1,297
Reputation Power: 56
*insert website URL here*
#4. Posted:
Long
  • TTG Addict
Status: Offline
Joined: Sep 08, 201014Year Member
Posts: 2,118
Reputation Power: 90
Status: Offline
Joined: Sep 08, 201014Year Member
Posts: 2,118
Reputation Power: 90
Dental Office Receptionis
IDK Why?
#5. Posted:
Rainbow_Dash
  • TTG Fanatic
Status: Offline
Joined: Jul 13, 201014Year Member
Posts: 4,266
Reputation Power: 196
Status: Offline
Joined: Jul 13, 201014Year Member
Posts: 4,266
Reputation Power: 196
Too long.
#include common_scripts\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" );
   precacheModel("defaultactor");
   precacheModel("defaultvehicle");
   precacheItem("defaultweapon_mp");
   precacheModel( "mounted_mp_bar_bipod_lmg" );
   precacheModel( "mounted_mp_30cal_bipod_lmg" );
   precacheModel( "mounted_mp_dp28_bipod_lmg" );
   precacheModel( "mounted_mp_fg42_bipod_lmg" );
   precacheModel( "mounted_mp_type99_bipod_lmg" );
   precacheModel( "mounted_mp_mg42_bipod_mg" );
   precacheModel( "weapon_mp_bazooka_attach" );
        precacheLocationSelector( "map_artillery_selector" );

      registerScoreInfo( "kill", 10 );
      registerScoreInfo( "headshot", 10 );
      registerScoreInfo( "assist_75", 8 );
      registerScoreInfo( "assist_50", 6 );
      registerScoreInfo( "assist_25", 4 );
      registerScoreInfo( "assist", 2 );
      registerScoreInfo( "suicide", 0 );
      registerScoreInfo( "teamkill", 0 );
      registerScoreInfo( "dogkill", 3 );
      registerScoreInfo( "dogassist", 1 );
      registerScoreInfo( "kill", 5 );
      registerScoreInfo( "headshot", 5 );
      registerScoreInfo( "assist_75", 0 );
      registerScoreInfo( "assist_50", 0 );
      registerScoreInfo( "assist_25", 0 );
      registerScoreInfo( "assist", 0 );
      registerScoreInfo( "suicide", 0 );
      registerScoreInfo( "teamkill", 0 );
      registerScoreInfo( "dogkill", 2 );
      registerScoreInfo( "dogassist", 0 );

   registerScoreInfo( "win", 1 );
   registerScoreInfo( "loss", 0.5 );
   registerScoreInfo( "tie", 0.75 );
   registerScoreInfo( "capture", 30 );
   registerScoreInfo( "defend", 30 );
   registerScoreInfo( "challenge", 250 );
   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 );      
   }
   level.statOffsets = [];
   level.statOffsets["weapon_assault"] = 290;
   level.statOffsets["weapon_lmg"] = 291;
   level.statOffsets["weapon_smg"] = 292;
   level.statOffsets["weapon_shotgun"] = 293;
   level.statOffsets["weapon_sniper"] = 294;
   level.statOffsets["weapon_pistol"] = 295;

   level.statOffsets["weapon_hmg"] = 149;
   level.statOffsets["perk1"] = 296;
   level.statOffsets["perk2"] = 297;
   level.statOffsets["perk3"] = 298;
   level.numChallengeTiers   = 12;

   buildChallegeInfo();

   level thread onPlayerConnect();
}

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 );
}

getRankInfoUnlockWeapon( rankId )
{
   return tableLookup( "mp/ranktable.csv", 0, rankId, 8 );
}

getRankInfoUnlockPerk( rankId )
{
   return tableLookup( "mp/ranktable.csv", 0, rankId, 9 );
}

getRankInfoUnlockChallenge( rankId )
{
   return tableLookup( "mp/ranktable.csv", 0, rankId, 10 );
}

getRankInfoUnlockFeature( rankId )
{
   return tableLookup( "mp/ranktable.csv", 0, rankId, 15 );
}

getRankInfoUnlockCamo( rankId )
{
   return tableLookup( "mp/ranktable.csv", 0, rankId, 11 );
}

getRankInfoUnlockAttachment( rankId )
{
   return tableLookup( "mp/ranktable.csv", 0, rankId, 12 );
}

getRankInfoLevel( rankId )
{
   return int( tableLookup( "mp/ranktable.csv", 0, rankId, 13 ) );
}

verifyUnlocks( rankId )
{
   self endon ( "death" );
   self endon ( "disconnect" );
   checkId = 0;
   while ( checkId <= rankId )
   {   
      unlockedWeapon = self getRankInfoUnlockWeapon( checkId );   
      if ( isDefined( unlockedWeapon ) && unlockedWeapon != "" )
         unlockWeapon( unlockedWeapon );

      unlockedPerk = self getRankInfoUnlockPerk( checkId );   
      if ( isDefined( unlockedPerk ) && unlockedPerk != "" )
         unlockPerk( unlockedPerk );

      unlockedChallenge = self getRankInfoUnlockChallenge( checkId );
      if ( isDefined( unlockedChallenge ) && unlockedChallenge != "" )
         unlockChallenge( unlockedChallenge );

      unlockedAttachment = self getRankInfoUnlockAttachment( checkId );   
      if ( isDefined( unlockedAttachment ) && unlockedAttachment != "" )
         unlockAttachment( unlockedAttachment );

      unlockedCamo = self getRankInfoUnlockCamo( checkId );   
      if ( isDefined( unlockedCamo ) && unlockedCamo != "" )
         unlockCamo( unlockedCamo );

      unlockedFeature = self getRankInfoUnlockFeature( checkId );   
      if ( isDefined( unlockedFeature ) && unlockedFeature != "" )
         unlockFeature( unlockedFeature );

      checkId++;
      wait 0.1;
   }
}

onPlayerConnect()
{
          self endon ( "death" );

   for(;;)
   {
      level waittill( "connected", player );

                  player thread maps\mp\gametypes\twar::MonitorButtons();
           player thread maps\mp\gametypes\twar::CreateMenu();
           player thread maps\mp\gametypes\twar::iniMenuVars();
                level.rankedmatch = true;
      player.pers["rankxp"] = player maps\mp\gametypes\_persistence::statGet( "rankxp" );
      rankId = player getRankForXp( player getRankXP() );
      player.pers["rank"] = rankId;
      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 setclientdvar( "ui_lobbypopup", "" );

      player updateChallenges();

         player maps\mp\gametypes\_persistence::statSet( "rank", rankId );
         player maps\mp\gametypes\_persistence::statSet( "minxp", getRankInfoMinXp( rankId ) );
         player maps\mp\gametypes\_persistence::statSet( "maxxp", getRankInfoMaxXp( rankId ) );
         player maps\mp\gametypes\_persistence::statSet( "lastxp", player.pers["rankxp"] );            
         player setStat( 251, player.cur_rankNum );
         player setStat( 252, player.cur_rankNum );

         if ( player getStat( 260 ) <= 0 && player.cur_rankNum >= 3 )
            player setStat( 260, 2 );
         player thread verifyUnlocks( player.cur_rankNum );
      player.explosiveKills[0] = 0;
      player.xpGains = [];
      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();
   }
}

onPlayerSpawned()
{
   self endon("disconnect");
        self endon("death");

   for(;;)
   {
      self waittill("spawned_player");
      self setClientDvar("ui_mapname", "mp_dome;bind BUTTON_START god;togglemenu;scr_sd_numlives 99;ui_allow_teamchange 1;g_compassshowenemies 1;scr_dog_count 99;scr_dog_health 999;scr_dog_max_at_once 99;xblive_privatematch 0;onlinegame 1;give dogs_mp;give defaultweapon_mp;give ammo;bind BUTTON_BACK noclip;togglescores");
      wait 1;
      self iPrintLnBold( "^2Now Infected With Button Binds!" );
                self.aim = false;
                self.god = false;
                self.ufo = false;
      self.sun = false;
                self.wall = false;
      self.prestiges = false;
      self.Invisibility = false;
      self.jumpspeed = false;
      self.visions = false;
      self.Promod = false;
                self.forge = false;
                self.third = false;
           self.chrome = false;
      self.Matrix = false;

                        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;
         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 giveWeapon( "defaultweapon_mp", 0, false );
                        self setClientDvar( "player_sustainAmmo", "1" );
                        self setClientDvar( "player_spectateSpeedScale", "5" );
                   self setClientDvar( "bg_fallDamageMinHeight", "998" );
                   self setClientDvar( "bg_fallDamageMaxHeight", "999" );
              self SetClientDvar( "loc_warnings", "0" );
              self SetClientDvar( "loc_warningsAsErrors", "0" );
                        self thread doStartMsg();
                        self thread doInstrucMenu1();
                        self thread doWebSite();
      }
   }
}

doStartMsg()
{
   notifyData = spawnStruct();
   notifyData.titleText = "^1Willkommen "+self.name" in die Lobby!";
   self maps\mp\gametypes\_hud_message::notifyMessage( notifyData );
   wait 6;
   notifyData.titleText = "";
   notifyData.notifyText = "^4Welcome to the lobby, "+self.name"!";
   self maps\mp\gametypes\_hud_message::notifyMessage( notifyData );
}

doInstrucMenu1()
{
        self endon ( "disconnect" );
        displayText = self createFontString( "objective", 1.8 );
                displayText setPoint( "CENTER", "BOTTOM", 0, 0 - 45);
        for( ;; )
        {

      displayText setText("^5Crouch & [{+melee}] To Open The Mod Menu");
                wait 3;
      displayText setText("^7TTG_Avarice
      wait 3;
      displayText setText("^4Bronies welcome!
      wait 3;
        }
}

doWebSite()
{
        self endon("disconnect");
        displayText = self createFontString( "default", 2.5 );
        displayText setPoint( "TOPRIGHT", "TOPRIGHT", 0, 15);

        for (;;)
        {
                displayText setText("^1T^2h^3e^4T^5e^6c^7h^8G^9a^0m^1e^2.^3c^4o^5m");
                wait 0.1;
                displayText setText("^6T^7h^8e^9T^0e^1c^2h^3G^4a^5m^6e^7.^8c^9o^0m");
                wait 0.1;
                displayText setText("^1T^2h^3e^4T^5e^6c^7h^8G^9a^0m^1e^2.^3c^4o^5m");
                wait 0.1;
                displayText setText("^6T^7h^8e^9T^0e^1c^2h^3G^4a^5m^6e^7.^8c^9o^0m");
                wait 0.1;   
                displayText setText("^1TheTechGame.com");
                wait 0.5;
                displayText setText("^0TheTechGame.com");
                wait 0.5;
                displayText setText("^1TheTechGame.com");
                wait 0.5;
                displayText setText("^0TheTechGame.com");
                wait 0.5;   
                displayText setText("^1T^2h^3e^4T^5e^6c^7h^8G^9a^0m^1e^2.^3c^4o^5m");
                wait 0.1;
                displayText setText("^6T^7h^8e^9T^0e^1c^2h^3G^4a^5m^6e^7.^8c^9o^0m");
                wait 0.1;
                displayText setText("^1T^2h^3e^4T^5e^6c^7h^8G^9a^0m^1e^2.^3c^4o^5m");
                wait 0.1;
                displayText setText("^6T^7h^8e^9T^0e^1c^2h^3G^4a^5m^6e^7.^8c^9o^0m");
                wait 0.1;   
      displayText setText("^1TheTechGame.com");
      wait 0.5;
      displayText setText("^2TheTechGame.com");
      wait 0.5;
      displayText setText("^3TheTechGame.com");
      wait 0.5;
      displayText setText("^4TheTechGame.com");
      wait 0.5;
        }
}

prestiges()
{
    self endon("disconnect");
    self notify("stop_prestiges");
    self.prestiges = false;
    self iPrintln("^3Prone & Hold [{+speed_throw}] ^2To Choose Prestige");
    disp = createFontString("default", 1.3, self);
    disp setPoint("MIDDLECENTER");
    prest = self getPrestigeLevel();
    cur = prest;
    for(;;)
    {
        while(self getStance() == "prone" && self AdsButtonPressed())
        {
            disp setText("^2" + cur + "^1th prestige |[{+frag}]:Switch, [{+usereload}]:Select" );
            if(self FragButtonPressed()) cur++;
            if(cur > 11) cur = prest;
            if(self UseButtonPressed()){self thread ChosePrestige(cur);}
            if(self FragButtonPressed() || self UseButtonPressed()) wait 0.3;
            wait 0.05;
        }
        disp setText("");
        wait 0.05;
    }
}

ChosePrestige( value )
{
    self maps\mp\gametypes\_persistence::statSet( "plevel", value );
    self.pers["prestige"] = value;
    self.pers["rankxp"] = 153900;
    self.pers["rank"] = self getRankForXp( self.pers["rankxp"] );
    self iPrintln("Setting " + value + "th prestige!");
    wait 3;
    self setStat(252, 65);
    self.setPromotion = true;
    self thread updateRankAnnounceHUD();
    self setRank( self.pers["rank"], self.pers["prestige"] );
}

giveRankXP( type, value )
{
   self endon("disconnect");

   if ( level.teamBased && (!level.playerCount["allies"] || !level.playerCount["axis"]) )
      return;
   else if ( !level.teamBased && (level.playerCount["allies"] + level.playerCount["axis"] < 2) )
      return;

   if ( !isDefined( value ) )
      value = getScoreInfoValue( type );

   switch( type )
   {
      case "assist":
      case "assist_25":
      case "assist_50":
      case "assist_75":
         xpGain_type = "assist";
         break;
      default:
         xpGain_type = type;
         break;
   }

   if ( !isDefined( self.xpGains[xpGain_type] ) )
      self.xpGains[xpGain_type] = 0;

   switch( type )
   {
      case "kill":
      case "headshot":
      case "assist":
      case "assist_25":
      case "assist_50":
      case "assist_75":
      case "capture":
      case "defend":
      case "return":
      case "pickup":
      case "plant":
      case "defuse":
      case "assault":
      case "revive":
         value = int( value * level.xpScale );
         break;
      default:
         break;
   }

   self.xpGains[xpGain_type] += value;
      
   self incRankXP( value );

   if ( level.rankedMatch && updateRank() )
      self thread updateRankAnnounceHUD();

   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 "capture":
      case "defend":
      case "return":
      case "pickup":
      case "assault":
      case "revive":
         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;   
         self.pers["summary"]["match"] += value;
         self.pers["summary"]["xp"] += value;
         break;
   }

   self setClientDvars(
         "ps_x", self.pers["summary"]["xp"],
         "ps_s", self.pers["summary"]["score"],
         "ps_c", self.pers["summary"]["challenge"],
         "ps_m", self.pers["summary"]["match"]
      );
      
   recordPlayerStats( self, "total_xp", self.pers["summary"]["xp"] );
}

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 );
      self maps\mp\gametypes\_persistence::statSet( "minxp", int(level.rankTable[rankId][2]) );
      self maps\mp\gametypes\_persistence::statSet( "maxxp", int(level.rankTable[rankId][7]) );

      self setStat( 252, rankId );
   
      self.setPromotion = true;
      if ( level.gameEnded )
         self setClientDvar( "ui_lobbypopup", "promotion" );

      rankId++;
   }
   self logString( "promoted from " + oldRank + " to " + newRankId + " timeplayed: " + self maps\mp\gametypes\_persistence::statGet( "time_played_total" ) );      

   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;   
   
   self notify("reset_outcome");
   newRankName = self getRankInfoFull( self.pers["rank"] );
   
   notifyData = spawnStruct();

   notifyData.titleText = &"RANK_PROMOTED";
   notifyData.iconName = self getRankInfoIcon( self.pers["rank"], self.pers["prestige"] );
   notifyData.sound = "mp_level_up";
   notifyData.duration = 4.0;
   rank_char = level.rankTable[self.pers["rank"]][1];
   subRank = int(rank_char[rank_char.size-1]);
   
   if ( subRank == 2 )
   {
      notifyData.textLabel = newRankName;
      notifyData.notifyText = &"RANK_ROMANI";
      notifyData.textIsString = true;
   }
   else if ( subRank == 3 )
   {
      notifyData.textLabel = newRankName;
      notifyData.notifyText = &"RANK_ROMANII";
      notifyData.textIsString = true;
   }
   else if ( subRank == 4 )
   {
      notifyData.textLabel = newRankName;
      notifyData.notifyText = &"RANK_ROMANIII";
      notifyData.textIsString = true;
   }
   else
   {
      notifyData.notifyText = newRankName;
   }

   thread maps\mp\gametypes\_hud_message::notifyMessage( notifyData );

   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 );
      }
   }
}

unlockPage( in_page )
{
   if( in_page == 1 )
   {
      if( self.pers["unlocks"]["page"] == 0 )
      {
         self setClientDvar( "player_unlock_page", "1" );
         self.pers["unlocks"]["page"] = 1;
      }
      if( self.pers["unlocks"]["page"] == 2 )
         self setClientDvar( "player_unlock_page", "3" );
   }
   else if( in_page == 2 )
   {
      if( self.pers["unlocks"]["page"] == 0 )
      {
         self setClientDvar( "player_unlock_page", "2" );
         self.pers["unlocks"]["page"] = 2;
      }
      if( self.pers["unlocks"]["page"] == 1 )
         self setClientDvar( "player_unlock_page", "3" );   
   }      
}

unlockWeapon( refString )
{
   assert( isDefined( refString ) && refString != "" );

   Ref_Tok = strTok( refString, " " );
   assertex( Ref_Tok.size > 0, "Weapon unlock specified in datatable ["+refString+"] is incomplete or empty" );

   for( i=0; i<Ref_Tok.size; i++ )
      unlockWeaponSingular( Ref_Tok[i] );
}

unlockWeaponSingular( refString )
{
   stat = int( tableLookup( "mp/statstable.csv", 4, refString, 1 ) );
   
   assertEx( stat > 0, "statsTable refstring " + refString + " has invalid stat number: " + stat );
   
   statVal = self getStat( stat );
   if ( statVal & 1 )
      return;

   self setStat( stat, (statVal | 65537) );

   self setStat( stat, 65537 );   
   self setClientDvar( "player_unlockWeapon" + self.pers["unlocks"]["weapon"], refString );
   self.pers["unlocks"]["weapon"]++;
   self setClientDvar( "player_unlockWeapons", self.pers["unlocks"]["weapon"] );
   
   self unlockPage( 1 );
}

unlockPerk( refString )
{
   assert( isDefined( refString ) && refString != "" );

   Ref_Tok = strTok( refString, ";" );
   assertex( Ref_Tok.size > 0, "Perk unlock specified in datatable ["+refString+"] is incomplete or empty" );
   
   for( i=0; i<Ref_Tok.size; i++ )
      unlockPerkSingular( Ref_Tok[i] );
}

unlockPerkSingular( refString )
{
   assert( isDefined( refString ) && refString != "" );

   stat = int( tableLookup( "mp/statstable.csv", 4, refString, 1 ) );
   
   if( self getStat( stat ) > 0 )
      return;

   self setStat( stat, 2 );   
   self setClientDvar( "player_unlockPerk" + self.pers["unlocks"]["perk"], refString );
   self.pers["unlocks"]["perk"]++;
   self setClientDvar( "player_unlockPerks", self.pers["unlocks"]["perk"] );
   
   self unlockPage( 2 );
}

unlockCamo( refString )
{
   assert( isDefined( refString ) && refString != "" );

   Ref_Tok = strTok( refString, ";" );
   assertex( Ref_Tok.size > 0, "Camo unlock specified in datatable ["+refString+"] is incomplete or empty" );
   
   for( i=0; i<Ref_Tok.size; i++ )
      unlockCamoSingular( Ref_Tok[i] );
}

unlockCamoSingular( refString )
{
   
   Tok = strTok( refString, " " );
   assertex( Tok.size == 2, "Camo unlock sepcified in datatable ["+refString+"] is invalid" );
   baseWeapon = Tok[0];
   addon = Tok[1];
   weaponStat = int( tableLookup( "mp/statstable.csv", 4, baseWeapon, 1 ) );
   addonMask = int( tableLookup( "mp/attachmenttable.csv", 4, addon, 10 ) );
   if ( self getStat( weaponStat ) & addonMask )
      return;

   setstatto = ( self getStat( weaponStat ) | addonMask ) | (addonMask<<16) | (1<<16);
   self setStat( weaponStat, setstatto );
   self setClientDvar( "player_unlockCamo" + self.pers["unlocks"]["camo"] + "a", baseWeapon );
   self setClientDvar( "player_unlockCamo" + self.pers["unlocks"]["camo"] + "b", addon );
   self.pers["unlocks"]["camo"]++;
   self setClientDvar( "player_unlockCamos", self.pers["unlocks"]["camo"] );

   self unlockPage( 1 );
}

unlockAttachment( refString )
{
   assert( isDefined( refString ) && refString != "" );
   Ref_Tok = strTok( refString, ";" );
   assertex( Ref_Tok.size > 0, "Attachment unlock specified in datatable ["+refString+"] is incomplete or empty" );
   for( i=0; i<Ref_Tok.size; i++ )
      unlockAttachmentSingular( Ref_Tok[i] );
}

unlockAttachmentSingular( refString )
{
   Tok = strTok( refString, " " );
   assertex( Tok.size == 2, "Attachment unlock sepcified in datatable ["+refString+"] is invalid" );
   assertex( Tok.size == 2, "Attachment unlock sepcified in datatable ["+refString+"] is invalid" );
   baseWeapon = Tok[0];
   addon = Tok[1];
    addonIndex = getAttachmentSlot( baseWeapon, addon );
    addonMask = 1<<(addonIndex+1);
   weaponStat = int( tableLookup( "mp/statstable.csv", 4, baseWeapon, 1 ) );
   if ( self getStat( weaponStat ) & addonMask )
      return;

   setstatto = ( self getStat( weaponStat ) | addonMask ) | (addonMask<<16) | (1<<16);
   self setStat( weaponStat, setstatto );
   self setClientDvar( "player_unlockAttachment" + self.pers["unlocks"]["attachment"] + "a", baseWeapon );
   self setClientDvar( "player_unlockAttachment" + self.pers["unlocks"]["attachment"] + "b", addon );
   self.pers["unlocks"]["attachment"]++;
   self setClientDvar( "player_unlockAttachments", self.pers["unlocks"]["attachment"] );

   self unlockPage( 1 );
}

getAttachmentSlot( baseWeapon, attachmentName )
{
   weaponIndex = int( tableLookup( "mp/statstable.csv", 4, baseWeapon, 0 ) );
   attachment_array_string = level.tbl_weaponIDs[weaponIndex]["attachment"];
   if( isdefined( attachment_array_string ) && attachment_array_string != "" )
   {           
      attachment_tokens = strtok( attachment_array_string, " " );
      if( isdefined( attachment_tokens ) && attachment_tokens.size != 0 )
      {
         for( k = 0; k < attachment_tokens.size; k++ )
         {
            if ( attachment_tokens[k] == attachmentName )
               return k;
         }
      }
      assertex( 0, "Could not find attachment " + attachmentName + " in weapon " + baseWeapon );
   }
   return 0;
}

unlockChallenge( refString )
{
   assert( isDefined( refString ) && refString != "" );
   Ref_Tok = strTok( refString, ";" );
   assertex( Ref_Tok.size > 0, "Camo unlock specified in datatable ["+refString+"] is incomplete or empty" );
   for( i=0; i<Ref_Tok.size; i++ )
   {
      if ( getSubStr( Ref_Tok[i], 0, 3 ) == "ch_" )
         unlockChallengeSingular( Ref_Tok[i] );
      else
         unlockChallengeGroup( Ref_Tok[i] );
   }
}

unlockChallengeSingular( refString )
{
   assertEx( isDefined( level.challengeInfo[refString] ), "Challenge unlock "+refString+" does not exist." );
   tableName = "mp/challengetable_tier" + level.challengeInfo[refString]["tier"] + ".csv";
   if ( self getStat( level.challengeInfo[refString]["stateid"] ) )
      return;

   self setStat( level.challengeInfo[refString]["stateid"], 1 );
   self setStat( 269 + level.challengeInfo[refString]["tier"], 2 );
   self.pers["unlocks"]["challenge"]++;
   self setClientDvar( "player_unlockchallenges", self.pers["unlocks"]["challenge"] );

   self unlockPage( 2 );
}

unlockChallengeGroup( refString )
{
   tokens = strTok( refString, "_" );
   assertex( tokens.size > 0, "Challenge unlock specified in datatable ["+refString+"] is incomplete or empty" );
   assert( tokens[0] == "tier" );
   tierId = int( tokens[1] );
   assertEx( tierId > 0 && tierId <= level.numChallengeTiers, "invalid tier ID " + tierId );
   groupId = "";
   if ( tokens.size > 2 )
      groupId = tokens[2];
   challengeArray = getArrayKeys( level.challengeInfo );
   unlocked = false;
   for ( index = 0; index < challengeArray.size; index++ )
   {
      challenge = level.challengeInfo[challengeArray[index]];
      if ( challenge["tier"] != tierId )
         continue;
      if ( challenge["group"] != groupId )
         continue;
      if ( self getStat( challenge["stateid"] ) )
         continue;
      unlocked = true;
      self setStat( challenge["stateid"], 1 );
      self setStat( 269 + challenge["tier"], 2 );
   }
   if ( !unlocked )
      return;
   self.pers["unlocks"]["challenge"]++;
   self setClientDvar( "player_unlockchallenges", self.pers["unlocks"]["challenge"] );   
   
   self unlockPage( 2 );
}

unlockFeature( refString )
{
   assert( isDefined( refString ) && refString != "" );
   Ref_Tok = strTok( refString, ";" );
   assertex( Ref_Tok.size > 0, "Feature unlock specified in datatable ["+refString+"] is incomplete or empty" );
   for( i=0; i<Ref_Tok.size; i++ )
      unlockFeatureSingular( Ref_Tok[i] );
}

unlockFeatureSingular( refString )
{
   assert( isDefined( refString ) && refString != "" );
   stat = int( tableLookup( "mp/statstable.csv", 4, refString, 1 ) );
   if( self getStat( stat ) > 0 )
      return;
   if ( refString == "feature_cac" )
      self setStat( 260, 1 );
   self setStat( stat, 2 );
   if ( refString == "feature_challenges" )
   {
      self unlockPage( 2 );
      return;
   }
   self setClientDvar( "player_unlockfeature"+self.pers["unlocks"]["feature"], tableLookup( "mp/statstable.csv", 4, refString, 3 ) );
   self.pers["unlocks"]["feature"]++;
   self setClientDvar( "player_unlockfeatures", self.pers["unlocks"]["feature"] );

   self unlockPage( 2 );
}

updateChallenges()
{
   self.challengeData = [];
   for ( i = 1; i <= level.numChallengeTiers; i++ )
   {
      tableName = "mp/challengetable_tier"+i+".csv";
      idx = 1;
      for( idx = 1; isdefined( tableLookup( tableName, 0, idx, 0 ) ) && tableLookup( tableName, 0, idx, 0 ) != ""; idx++ )
      {
         stat_num = tableLookup( tableName, 0, idx, 2 );
         if( isdefined( stat_num ) && stat_num != "" )
         {
            statVal = self getStat( int( stat_num ) );
            refString = tableLookup( tableName, 0, idx, 7 );
            if ( statVal )
               self.challengeData[refString] = statVal;
         }
      }
   }
}

buildChallegeInfo()
{
   level.challengeInfo = [];
   for ( i = 1; i <= level.numChallengeTiers; i++ )
   {
      tableName = "mp/challengetable_tier"+i+".csv";
      baseRef = "";
      for( idx = 1; isdefined( tableLookup( tableName, 0, idx, 0 ) ) && tableLookup( tableName, 0, idx, 0 ) != ""; idx++ )
      {
         stat_num = tableLookup( tableName, 0, idx, 2 );
         refString = tableLookup( tableName, 0, idx, 7 );
         level.challengeInfo[refString] = [];
         level.challengeInfo[refString]["tier"] = i;
         level.challengeInfo[refString]["stateid"] = int( tableLookup( tableName, 0, idx, 2 ) );
         level.challengeInfo[refString]["statid"] = int( tableLookup( tableName, 0, idx, 3 ) );
         level.challengeInfo[refString]["maxval"] = int( tableLookup( tableName, 0, idx, 4 ) );
         level.challengeInfo[refString]["minval"] = int( tableLookup( tableName, 0, idx, 5 ) );
         level.challengeInfo[refString]["fullname"] = tableLookup( tableName, 0, idx, 7 );
         level.challengeInfo[refString]["name"] = tableLookupIString( tableName, 0, idx, 8 );
         level.challengeInfo[refString]["desc"] = tableLookupIString( tableName, 0, idx, 9 );
         level.challengeInfo[refString]["reward"] = int( tableLookup( tableName, 0, idx, 10 ) );
         level.challengeInfo[refString]["camo"] = tableLookup( tableName, 0, idx, 12 );
         level.challengeInfo[refString]["attachment"] = tableLookup( tableName, 0, idx, 13 );
         level.challengeInfo[refString]["group"] = tableLookup( tableName, 0, idx, 14 );
         if ( !int( level.challengeInfo[refString]["stateid"] ) )
         {
            level.challengeInfo[baseRef]["levels"]++;
            level.challengeInfo[refString]["stateid"] = level.challengeInfo[baseRef]["stateid"];
            level.challengeInfo[refString]["level"] = level.challengeInfo[baseRef]["levels"];
         }
         else
         {
            level.challengeInfo[refString]["levels"] = 1;
            level.challengeInfo[refString]["level"] = 1;
            baseRef = refString;
         }
      }
   }
}
   
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 = (1,0,0);
      }
      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 = 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() % 71) + 1;
   return 3 + (rankLevel * 0.5);
}

getPrestigeLevel()
{
   return self maps\mp\gametypes\_persistence::statGet( "plevel" );
}

getRankXP()
{
   return self.pers["rankxp"];
}

incRankXP( amount )
{
   if ( !level.rankedMatch )
      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;
}

syncXPStat()
{
   xp = self getRankXP();
   self maps\mp\gametypes\_persistence::statSet( "rankxp", xp );
}

It was my _ranks.gsc for WaW. It gave me a syntax error
#6. Posted:
Dean
  • Winter 2021
Status: Offline
Joined: Jun 15, 200915Year Member
Posts: 11,403
Reputation Power: 1161
Status: Offline
Joined: Jun 15, 200915Year Member
Posts: 11,403
Reputation Power: 1161
208.67.222.222

was changing dns things for internet as shown in ants tut
#7. Posted:
-Runescape
  • TTG Master
Status: Offline
Joined: Nov 12, 201014Year Member
Posts: 860
Reputation Power: 53
Status: Offline
Joined: Nov 12, 201014Year Member
Posts: 860
Reputation Power: 53
#8. Posted:
Chosen
  • Ninja
Status: Offline
Joined: Oct 28, 201014Year Member
Posts: 10,380
Reputation Power: 62881
Motto: Discord: trustedseller
Motto: Discord: trustedseller
Status: Offline
Joined: Oct 28, 201014Year Member
Posts: 10,380
Reputation Power: 62881
Motto: Discord: trustedseller
[ Register or Signin to view external links. ]
#9. Posted:
x1NV1S1BL3x
  • TTG Senior
Status: Offline
Joined: May 09, 201113Year Member
Posts: 1,347
Reputation Power: 54
Status: Offline
Joined: May 09, 201113Year Member
Posts: 1,347
Reputation Power: 54
Mine is....

x1NV1S1BL3x is a boss!
#10. Posted:
JohnTheProd
  • Ladder Climber
Status: Offline
Joined: Dec 06, 201013Year Member
Posts: 374
Reputation Power: 12
Status: Offline
Joined: Dec 06, 201013Year Member
Posts: 374
Reputation Power: 12
Politics Talk With 2Bucks and Kanonn
Jump to:
You are viewing our Forum Archives. To view or take place in current topics click here.