mirror of
https://github.com/InfinityLoader/IL-GSC.git
synced 2025-06-21 07:27:52 -05:00
258 lines
4.8 KiB
Plaintext
258 lines
4.8 KiB
Plaintext
/*******************************************************************
|
|
* Decompiled By: Bog
|
|
* Decompiled File: codescripts\character.gsc
|
|
* Game: Call of Duty: Modern Warfare 3
|
|
* Platform: Console
|
|
* Function Count: 13
|
|
* Decompile Time: 193 ms
|
|
* Timestamp: 10/27/2023 2:29:18 AM
|
|
*******************************************************************/
|
|
|
|
//Function Number: 1
|
|
func_19F3(param_00)
|
|
{
|
|
self setmodel(param_00[randomint(param_00.size)]);
|
|
}
|
|
|
|
//Function Number: 2
|
|
func_19F4(param_00)
|
|
{
|
|
for(var_01 = 0;var_01 < param_00.size;var_01++)
|
|
{
|
|
precachemodel(param_00[var_01]);
|
|
}
|
|
}
|
|
|
|
//Function Number: 3
|
|
attachhead(param_00,param_01)
|
|
{
|
|
if(!isdefined(level.var_19F6))
|
|
{
|
|
level.var_19F6 = [];
|
|
}
|
|
|
|
if(!isdefined(level.var_19F6[param_00]))
|
|
{
|
|
level.var_19F6[param_00] = randomint(param_01.size);
|
|
}
|
|
|
|
var_02 = level.var_19F6[param_00] + 1 % param_01.size;
|
|
if(isdefined(self.script_char_index))
|
|
{
|
|
var_02 = self.script_char_index % param_01.size;
|
|
}
|
|
|
|
level.var_19F6[param_00] = var_02;
|
|
self attach(param_01[var_02],"",1);
|
|
self.headmodel = param_01[var_02];
|
|
}
|
|
|
|
//Function Number: 4
|
|
func_19F9(param_00,param_01)
|
|
{
|
|
if(!isdefined(level.character_hat_index))
|
|
{
|
|
level.character_hat_index = [];
|
|
}
|
|
|
|
if(!isdefined(level.character_hat_index[param_00]))
|
|
{
|
|
level.character_hat_index[param_00] = randomint(param_01.size);
|
|
}
|
|
|
|
var_02 = level.character_hat_index[param_00] + 1 % param_01.size;
|
|
level.character_hat_index[param_00] = var_02;
|
|
self attach(param_01[var_02]);
|
|
self.var_ABA = param_01[var_02];
|
|
}
|
|
|
|
//Function Number: 5
|
|
func_19FB()
|
|
{
|
|
self detachall();
|
|
var_00 = self.var_19FC;
|
|
if(!isdefined(var_00))
|
|
{
|
|
return;
|
|
}
|
|
|
|
self.var_19FC = "none";
|
|
self [[ level.putguninhand ]](var_00);
|
|
}
|
|
|
|
//Function Number: 6
|
|
save()
|
|
{
|
|
var_00["gunHand"] = self.var_19FC;
|
|
if(isdefined(self.name))
|
|
{
|
|
}
|
|
else
|
|
{
|
|
}
|
|
|
|
var_01 = self getattachsize();
|
|
for(var_02 = 0;var_02 < var_01;var_02++ = var_41["name"])
|
|
{
|
|
var_41["attach"][var_02]["model"] = self getattachmodelname(var_02);
|
|
var_41["attach"][var_02]["tag"] = self getattachtagname(var_02);
|
|
}
|
|
|
|
return var_41;
|
|
}
|
|
|
|
//Function Number: 7
|
|
load(param_00)
|
|
{
|
|
self detachall();
|
|
self.var_19FC = param_00["gunHand"];
|
|
self.anim_guninhand = param_00["gunInHand"];
|
|
self setmodel(param_00["model"]);
|
|
self.var_ABA = param_00["hatModel"];
|
|
if(isdefined(param_00["name"]))
|
|
{
|
|
self.name = param_00["name"];
|
|
}
|
|
else
|
|
{
|
|
}
|
|
|
|
var_01 = param_00["attach"];
|
|
var_02 = var_01.size;
|
|
for(var_03 = 0;var_03 < var_02;var_03++)
|
|
{
|
|
self attach(var_01[var_03]["model"],var_01[var_03]["tag"]);
|
|
}
|
|
}
|
|
|
|
//Function Number: 8
|
|
precache(param_00)
|
|
{
|
|
if(isdefined(param_00["name"]))
|
|
{
|
|
}
|
|
else
|
|
{
|
|
}
|
|
|
|
precachemodel(param_00["model"]);
|
|
var_01 = param_00["attach"];
|
|
var_02 = var_01.size;
|
|
for(var_03 = 0;var_03 < var_02;var_03++)
|
|
{
|
|
precachemodel(var_01[var_03]["model"]);
|
|
}
|
|
}
|
|
|
|
//Function Number: 9
|
|
get_random_character(param_00)
|
|
{
|
|
var_01 = strtok(self.classname,"_");
|
|
if(!common_scripts\utility::issp())
|
|
{
|
|
if(isdefined(self.pers["modelIndex"]) && self.pers["modelIndex"] < param_00)
|
|
{
|
|
return self.pers["modelIndex"];
|
|
}
|
|
|
|
var_02 = randomint(param_00);
|
|
self.pers["modelIndex"] = var_02;
|
|
return var_02;
|
|
}
|
|
else if(var_02.size <= 2)
|
|
{
|
|
return randomint(var_01);
|
|
}
|
|
|
|
var_03 = "auto";
|
|
var_02 = undefined;
|
|
var_04 = var_01[2];
|
|
if(isdefined(self.script_char_index))
|
|
{
|
|
var_03 = self.script_char_index;
|
|
}
|
|
|
|
if(isdefined(self.var_1A02))
|
|
{
|
|
var_05 = "grouped";
|
|
var_02 = "group_" + self.var_1A02;
|
|
}
|
|
|
|
if(!isdefined(level.character_index_cache))
|
|
{
|
|
level.character_index_cache = [];
|
|
}
|
|
|
|
if(!isdefined(level.character_index_cache[var_04]))
|
|
{
|
|
level.character_index_cache[var_04] = [];
|
|
}
|
|
|
|
if(!isdefined(level.character_index_cache[var_04][var_02]))
|
|
{
|
|
initialize_character_group(var_04,var_02,param_00);
|
|
}
|
|
|
|
if(!isdefined(var_03))
|
|
{
|
|
var_03 = func_1A04(var_04,var_02);
|
|
if(!isdefined(var_03))
|
|
{
|
|
var_03 = randomint(5000);
|
|
}
|
|
}
|
|
|
|
while(var_03 >= param_00)
|
|
{
|
|
var_03 = var_03 - param_00;
|
|
}
|
|
|
|
level.character_index_cache[var_04][var_02][var_03]++;
|
|
return var_03;
|
|
}
|
|
|
|
//Function Number: 10
|
|
func_1A04(param_00,param_01)
|
|
{
|
|
var_02 = [];
|
|
var_03 = level.character_index_cache[param_00][param_01][0];
|
|
var_02[0] = 0;
|
|
for(var_04 = 1;var_04 < level.character_index_cache[param_00][param_01].size;var_04++)
|
|
{
|
|
if(level.character_index_cache[param_00][param_01][var_04] > var_03)
|
|
{
|
|
continue;
|
|
}
|
|
|
|
if(level.character_index_cache[param_00][param_01][var_04] < var_03)
|
|
{
|
|
var_02 = [];
|
|
var_03 = level.character_index_cache[param_00][param_01][var_04];
|
|
}
|
|
|
|
var_02[var_02.size] = var_04;
|
|
}
|
|
|
|
return random(var_02);
|
|
}
|
|
|
|
//Function Number: 11
|
|
initialize_character_group(param_00,param_01,param_02)
|
|
{
|
|
for(var_03 = 0;var_03 < param_02;var_03++)
|
|
{
|
|
level.character_index_cache[param_00][param_01][var_03] = 0;
|
|
}
|
|
}
|
|
|
|
//Function Number: 12
|
|
get_random_weapon(param_00)
|
|
{
|
|
return randomint(param_00);
|
|
}
|
|
|
|
//Function Number: 13
|
|
random(param_00)
|
|
{
|
|
return param_00[randomint(param_00.size)];
|
|
} |