 |
Black Ops 3 Source Code Explorer
0.1
An script explorer for Black Ops 3 by ZeRoY
|
Go to the documentation of this file. 1 #using scripts\codescripts\struct;
3 #using scripts\shared\killstreaks_shared;
4 #using scripts\shared\math_shared;
5 #using scripts\shared\rank_shared;
7 #insert scripts\shared\shared.gsh;
9 #using scripts\mp\gametypes\_globallogic;
10 #using scripts\mp\gametypes\_globallogic_audio;
11 #using scripts\mp\gametypes\_globallogic_score;
12 #using scripts\mp\gametypes\_globallogic_utils;
13 #using scripts\mp\gametypes\_spawnlogic;
15 #using scripts\mp\_util;
16 #using scripts\mp\killstreaks\_killstreaks;
18 #namespace globallogic_defaults;
22 if ( level.multiTeam )
26 return util::getotherteam(losing_team);
32 level.gameForfeited=
true;
34 level notify (
"forfeit in progress" );
35 level endon(
"forfeit in progress" );
36 level endon(
"abort forfeit" );
40 announcement( game[
"strings"][
"opponent_forfeiting_in"], forfeit_delay, 0 );
42 announcement( game[
"strings"][
"opponent_forfeiting_in"], 10.0, 0 );
46 if ( level.multiTeam )
48 SetDvar(
"ui_text_endreason", game[
"strings"][
"other_teams_forfeited"] );
49 endReason = game[
"strings"][
"other_teams_forfeited"];
52 else if ( !isdefined( team ) )
54 SetDvar(
"ui_text_endreason", game[
"strings"][
"players_forfeited"] );
55 endReason = game[
"strings"][
"players_forfeited"];
56 winner = level.players[0];
58 else if ( isdefined( level.teams[team] ) )
60 endReason = game[
"strings"][team+
"_forfeited"];
61 SetDvar(
"ui_text_endreason", endReason );
67 assert( isdefined( team ),
"Forfeited team is not defined" );
68 assert( 0,
"Forfeited team " + team +
" is not allies or axis" );
72 level.forcedEnd =
true;
74 if ( isPlayer( winner ) )
75 print(
"forfeit, win: " + winner getXuid() +
"(" + winner.name +
")" );
85 if ( isdefined( level.teams[team] ) )
87 eliminatedString = game[
"strings"][team +
"_eliminated"];
88 iPrintLn( eliminatedString );
90 SetDvar(
"ui_text_endreason", eliminatedString );
100 SetDvar(
"ui_text_endreason", game[
"strings"][
"tie"] );
104 if ( level.teamBased )
113 if ( isdefined( level.teams[team] ) )
115 eliminatedString = game[
"strings"][
"enemies_eliminated"];
116 iPrintLn( eliminatedString );
118 SetDvar(
"ui_text_endreason", eliminatedString );
128 SetDvar(
"ui_text_endreason", game[
"strings"][
"tie"] );
132 if ( level.teamBased )
151 if ( isdefined( game[
"overtime_round"] ) )
153 if (
IS_TRUE( level.doubleOvertime ) &&
154 isdefined( roundWinner ) &&
155 roundWinner !=
"tie" )
163 if ( level.scoreRoundWinBased )
177 if ( !level.teamBased )
181 if ( isdefined( winner ) )
182 print(
"last one alive, win: " + winner.name );
184 print(
"last one alive, win: unknown" );
190 for ( index = 0; index < level.players.size; index++ )
192 player = level.players[index];
194 if ( !isAlive( player ) )
197 if ( !isdefined( player.pers[
"team"] ) || player.pers[
"team"] != team )
210 if ( level.teamBased )
220 if ( isdefined( winner ) )
221 print(
"time limit, win: " + winner.name );
223 print(
"time limit, tie" );
229 SetDvar(
"ui_text_endreason", game[
"strings"][
"time_limit_reached"] );
236 if ( !level.endGameOnScoreLimit )
241 if ( level.teamBased )
251 if ( isdefined( winner ) )
252 print(
"scorelimit, win: " + winner.name );
254 print(
"scorelimit, tie" );
259 SetDvar(
"ui_text_endreason", game[
"strings"][
"score_limit_reached"] );
270 if ( level.teamBased )
280 if ( isdefined( winner ) )
281 print(
"roundscorelimit, win: " + winner.name );
283 print(
"roundscorelimit, tie" );
288 SetDvar(
"ui_text_endreason", game[
"strings"][
"round_score_limit_reached"] );
297 if( isdefined( origin ) && isdefined( angles ) )
299 self spawn(origin, angles);
304 assert( spawnpoints.size,
"There are no mp_global_intermission spawn points in the map. There must be at least one." );
307 self spawn(spawnpoint.origin, spawnpoint.angles);
320 if( isdefined( spawnpoint ) )
322 self spawn( spawnpoint.origin, spawnpoint.angles );
327 println(
"NO mp_global_intermission SPAWNPOINTS IN MAP" );
334 return math::clamp( GetGametypeSetting(
"timeLimit" ), level.timeLimitMin, level.timeLimitMax );
339 teamkill_penalty = 1;
346 return teamkill_penalty;
function endGame(winner, endReasonText)
function default_onDeadEvent(team)
function default_onRoundScoreLimit()
function default_onTimeLimit()
function default_onRoundEndGame(winner)
function spawn(v_origin=(0, 0, 0), v_angles=(0, 0, 0))
function default_onScoreLimit()
function getScoreInfoValue(type)
function default_getTeamKillPenalty(eInflictor, attacker, sMeansOfDeath, weapon)
function is_killstreak_weapon(weapon)
function get_killstreak_team_kill_penalty_scale(weapon)
function determineTeamWinnerByTeamScore()
function determineTeamWinnerByGameStat(gameStat)
function _get_spawnpoint_array(spawnpoint_name)
function default_onSpawnIntermission(endGame)
function logTeamWinString(wintype, winner)
function default_getTeamKillScore(eInflictor, attacker, sMeansOfDeath, weapon)
function default_onOneLeftEvent(team)
function getHighestScoringPlayer()
function default_onForfeit(team)
function default_getTimeLimit()
function get_spawnpoint_random(spawnpoints, predictedSpawn, isIntermissionSpawn=false)
function clamp(val, val_min, val_max)
function default_determineWinner(roundWinner)
function default_onAliveCountChange(team)
function leader_dialog_on_player(dialogKey, objectiveKey, killstreakId, dialogBufferKey, introDialog)
function get_random_intermission_point()
function default_onSpawnSpectator(origin, angles)
function default_onLastTeamAliveEvent(team)
function getWinningTeamFromLoser(losing_team)