/******************************************************************* * Decompiled By: Bog * Decompiled File: maps\_props.gsc * Game: Call of Duty: Modern Warfare 3 * Platform: Console * Function Count: 17 * Decompile Time: 260 ms * Timestamp: 10/27/2023 2:34:31 AM *******************************************************************/ //Function Number: 1 prop_notetrack_exist(param_00,param_01) { if(!isdefined(level.prop_notetracks)) { level.prop_notetracks = []; } if(!isdefined(level.prop_notetracks[param_00])) { level.prop_notetracks[param_00] = []; } if(isdefined(level.prop_notetracks[param_00][param_01])) { return 1; } level.prop_notetracks[param_00][param_01] = 1; return 0; } //Function Number: 2 func_3C82(param_00) { if(prop_notetrack_exist(param_00,"add_smoking_notetracks")) { return; } maps\_anim::addnotetrack_customfunction(param_00,"attach cig",::attach_cig); maps\_anim::addnotetrack_customfunction(param_00,"detach cig",::detach_cig); maps\_anim::addnotetrack_customfunction(param_00,"puff",::func_3C92); maps\_anim::addnotetrack_customfunction(param_00,"exhale",::smoke_exhale); level._effect["cigar_glow"] = loadfx("fire/cigar_glow_far"); level._effect["cigar_glow_puff"] = loadfx("fire/cigar_glow_puff"); level._effect["cigar_smoke_puff"] = loadfx("smoke/cigarsmoke_puff_far"); level._effect["cigar_exhale"] = loadfx("smoke/cigarsmoke_exhale_far"); level.var_1B2E["cigar"] = "prop_price_cigar"; } //Function Number: 3 func_3C83(param_00) { if(isdefined(param_00.var_3C84)) { param_00.var_3C84 delete(); } } //Function Number: 4 add_sit_load_ak_notetracks(param_00) { if(prop_notetrack_exist(param_00,"add_cellphone_notetracks")) { return; } maps\_anim::addnotetrack_customfunction(param_00,"attach clip left",::func_3C86); maps\_anim::addnotetrack_customfunction(param_00,"detach clip left",::func_3C83); level.var_1B2E["clip"] = "weapon_ak47_clip"; } //Function Number: 5 func_3C86(param_00) { param_00 notify("new_prop_rotation"); var_01 = spawn("script_model",(0,0,0)); var_01 linkto(param_00,"tag_inhand",(0,0,0),(0,0,0)); var_01 setmodel(maps\_utility::func_22CC("clip")); param_00.var_3C84 = var_01; thread func_3C8E(var_01,param_00); } //Function Number: 6 func_3C87(param_00) { if(prop_notetrack_exist(param_00,"add_cellphone_notetracks")) { return; } maps\_anim::addnotetrack_customfunction(param_00,"attach phone",::func_3C88); maps\_anim::addnotetrack_customfunction(param_00,"detach phone",::detach_phone); level.var_1B2E["cellphone"] = "com_cellphone_off"; } //Function Number: 7 func_3C88(param_00) { param_00 notify("new_phone_rotation"); var_01 = spawn("script_model",(0,0,0)); var_01 linkto(param_00,"tag_inhand",(0,0,0),(0,0,0)); var_01 setmodel(maps\_utility::func_22CC("cellphone")); param_00.phone = var_01; thread func_3C8E(var_01,param_00); } //Function Number: 8 detach_phone(param_00) { if(isdefined(param_00.phone)) { param_00.phone delete(); } } //Function Number: 9 attach_cig(param_00) { param_00 notify("new_cigar_rotation"); var_01 = spawn("script_model",(0,0,0)); var_01 linkto(param_00,"tag_inhand",(0,0,0),(0,0,0)); var_01 setmodel(maps\_utility::func_22CC("cigar")); playfxontag(common_scripts\utility::func_539("cigar_glow"),var_01,"tag_cigarglow"); param_00.cigar = var_01; thread prop_delete_cig(var_01,param_00); } //Function Number: 10 detach_cig(param_00) { if(isdefined(param_00.cigar)) { param_00.cigar thread func_3C90(); } } //Function Number: 11 func_3C8E(param_00,param_01) { param_01 notify("new_prop_rotation" + param_00.model); param_01 endon("new_prop_rotation" + param_00.model); param_00 endon("death"); param_01 maps\_utility::add_endon("new_prop_rotation" + param_00.model); param_00 maps\_utility::add_endon("death"); maps\_utility::add_wait(::maps\_utility::waittill_msg,"stop_loop"); param_01 maps\_utility::add_wait(::maps\_utility::waittill_msg,"death"); maps\_utility::do_wait_any(); param_00 delete(); } //Function Number: 12 prop_delete_cig(param_00,param_01) { param_01 notify("new_prop_rotation" + param_00.model); param_01 endon("new_prop_rotation" + param_00.model); param_00 endon("death"); param_01 maps\_utility::add_endon("new_prop_rotation" + param_00.model); param_00 maps\_utility::add_endon("death"); maps\_utility::add_wait(::maps\_utility::waittill_msg,"stop_loop"); param_01 maps\_utility::add_wait(::maps\_utility::waittill_msg,"death"); maps\_utility::do_wait_any(); param_00 thread func_3C90(); } //Function Number: 13 func_3C90() { self endon("death"); if(!isdefined(self)) { return; } if(isdefined(self.cig_throwing) && self.cig_throwing) { return; } self.cig_throwing = 1; stopfxontag(common_scripts\utility::func_539("cigar_glow"),self,"tag_cigarglow"); var_00 = 3; var_01 = anglestoforward(self.angles); self unlink(); self movegravity(var_01 * 100,var_00); self rotatevelocity((400,0,0),var_00,0,var_00); wait var_00; self delete(); } //Function Number: 14 func_3C92(param_00) { if(!isdefined(param_00.cigar)) { return; } param_00 endon("death"); param_00.cigar endon("death"); playfxontag(common_scripts\utility::func_539("cigar_glow_puff"),param_00.cigar,"tag_cigarglow"); wait 1; playfxontag(common_scripts\utility::func_539("cigar_smoke_puff"),param_00,"tag_eye"); } //Function Number: 15 smoke_exhale(param_00) { if(!isdefined(param_00.cigar)) { return; } playfxontag(common_scripts\utility::func_539("cigar_exhale"),param_00,"tag_eye"); } //Function Number: 16 func_3C94() { var_00 = []; self endon("death",var_41[var_41.size],"J_Wrist_RI",var_41[var_41.size],"J_Elbow_LE",var_41[var_41.size],"J_Hip_RI",var_41[var_41.size],"J_SpineLower",var_41[var_41.size],"J_HipTwist_LE",var_41[var_41.size],"J_HipTwist_RI",var_41[var_41.size],"J_Knee_LE",var_41[var_41.size],"J_Knee_RI",var_41[var_41.size],"J_SpineUpper",var_41[var_41.size],"J_Ankle_LE",var_41[var_41.size],"J_Ankle_RI",var_41[var_41.size],"J_Knee_Bulge_LE",var_41[var_41.size],"J_Ball_LE",var_41[var_41.size],"J_Clavicle_RI",var_41[var_41.size],"J_Neck",var_41[var_41.size],"J_ShoulderRaise_LE",var_41[var_41.size],"J_Head",var_41[var_41.size],"J_Shoulder_RI",var_41[var_41.size],"J_Brow_LE",var_41[var_41.size],"J_Cheek_RI",var_41[var_41.size],"J_CoatFront_RI",var_41[var_41.size],"J_CoatRear_LE",var_41[var_41.size],"J_CoatRear_RI",var_41[var_41.size],"J_Hip_LE",var_41[var_41.size],"J_CoatFront_LE",var_41[var_00.size],"J_MainRoot"); for(;;) { while(self.movemode != "run") { wait 0.2; continue; } playfxontag(level._effect["ghillie_leaves"],self,common_scripts\utility::random(var_41)); wait randomfloatrange(0.1,2.5); } } //Function Number: 17 func_3C95() { attach_cig(self); }