Hey all,
Yet another problem in WaW
I have tryed everything but the game does not seem to be reading my Strings?
Has anyone gotten Strings to work, or an introscreen to work?
For example;
Code:
do_custom_introscreen()
{
custom_introscreen(&"SEE3_INTROSCREEN_TITLE", &"SEE3_INTROSCREEN_DATE", &"SEE3_INTROSCREEN_PLACE", &"SEE3_INTROSCREEN_INFO", &"SEE3_INTROSCREEN_INFO2" );
}
custom_introscreen( string1, string2, string3, string4, string5 )
{
level.introstring = [];
wait 0.5;
//Title of level
if( IsDefined( string1 ) )
{
maps\_introscreen::introscreen_create_line( string1, "lower_left" );
}
wait( 2 );
if( IsDefined( string2 ) )
{
maps\_introscreen::introscreen_create_line( string2, "lower_left" );
wait 2;
}
if( IsDefined( string3 ) )
{
maps\_introscreen::introscreen_create_line( string3, "lower_left" );
wait 1.5;
}
if( IsDefined( string4 ) )
{
maps\_introscreen::introscreen_create_line( string4, "lower_left" );
wait 1.5;
}
if( IsDefined( string5 ) )
{
maps\_introscreen::introscreen_create_line( string5, "lower_left" );
}
wait 3;
level thread maps\_introscreen::introscreen_fadeOutText();
}
obj1_follow() // called from obj1();
{
self endon("death");
while (1)
{
wait 0.5;
objective_position(1, self.origin);
}
}
WatchPlayerDist() // eXsolved's Script
{
level endon("Panzer_destroyed");
DistanceMs = 1000;
Entity = GetEnt( "front_panzer", "targetname" );
wait_for_first_player();
player = getplayers();
while( 1 )
{
Distance = distance2d( player[0].origin, Entity.origin );
if( Distance > DistanceMs )
{
// Mission Failed!
SetDvar( "ui_deadquote", &"SCRIPT_MISSIONFAIL_KILLTEAM_RUSSIAN" );
missionfailed();
}
wait 0.05;
}
}
SEE3_INTROSCREEN_DATE Comes up insted of what i have defined it as in my .str file
My str file is as follows;
Code:
VERSION "1"
CONFIG "C:\cod5\cod\cod5\bin\StringEd.cfg"
FILENOTES ""
REFERENCE OBJ_1
LANG_ENGLISH "Advance with the Tank"
REFERENCE OBJ_2
LANG_ENGLISH "Hold your position untill Reinforcements arrive"
REFERENCE OBJ_3
LANG_ENGLISH "Kill all enemy resistance in the Trench"
REFERENCE OBJ_5
LANG_ENGLISH "Continue the Advance"
REFERENCE HINT_CROUCH
LANG_ENGLISH "Press [{gocrouch}] To Crouch"
REFERENCE INTROSCREEN_PLACE
LANG_ENGLISH "Seelow Heights, Germany "
REFERENCE OBJ_6
LANG_ENGLISH "Kill General Amsel"
REFERENCE INTROSCREEN_DATE
LANG_ENGLISH "April, 1942"
REFERENCE INTROSCREEN_INFO
LANG_ENGLISH "Schütze Adler"
REFERENCE INTROSCREEN_INFO2
LANG_ENGLISH "4th Panzer Army"
REFERENCE INTROSCREEN_TITLE
LANG_ENGLISH "'A Change of Heart'"
REFERENCE OBJ_4
LANG_ENGLISH "Defeat the enemy sniper"
REFERENCE TO_BE_CONTINUED
LANG_ENGLISH "To Be Continued...."
REFERENCE EASY_PRONE_DESC
LANG_ENGLISH "Press^3 [{goprone}] ^7to go prone"
ENDMARKER
Just for reference my .csv and my .gsc;
Code:
ignore,code_post_gfx
ignore,common
// map specific files
col_map_sp,maps/see3.d3dbsp
gfx_map,maps/see3.d3dbsp
rawfile,maps/see3.gsc
rawfile,maps/see3_amb.gsc
rawfile,maps/see3_anim.gsc
rawfile,maps/see3_fx.gsc
rawfile,english/localizedstrings/see3.str
// Weapons
weapon,sp/m1garand
weapon,sp/colt
weapon,sp/fraggrenade
weapon,sp/stg44
weapon,sp/panzerschrek
weapon,sp/walther
weapon,sp/stielhandgranate
weapon,sp/m8_white_smoke
// Viewarms
xmodel,viewmodel_ger_wermacht_arms
xmodel,viewmodel_ger_wermacht_player
// 3rd person model
include,common_player_us
////////////////////////////////////////////////////////////////////
// VEHICLE SECTION
////////////////////////////////////////////////////////////////////
// Scripts
rawfile,maps/_see2_t34.gsc
rawfile,maps/_see2_panzeriv.gsc
// VEHICLE FX
// Weapons
fx,weapon/tank/fx_tank_water
//fx,weapon/tank/fx_tank_test
fx,weapon/tank/fx_tank_dirt
fx,weapon/artillery/fx_artillery_pak43_geotrail
fx,weapon/rocket/fx_rocket_katyusha_geotrail
// Explosions
fx,explosions/large_vehicle_explosion
fx,vehicle/vexplosion/fx_vexplode_ger_panther
fx,vehicle/vexplosion/fx_vexplode_ger_kingtiger
fx,vehicle/vexplosion/fx_vexplode_tiger_turret_cookoff
fx,vehicle/vexplosion/fx_vexplode_ger_panzer
fx,vehicle/vexplosion/fx_turretexp_panzer4
fx,vehicle/vexplosion/fx_turretexp_kingtiger
fx,vehicle/vexplosion/fx_turretexp_panther
fx,vehicle/vexplosion/fx_vexplode_rus_t34
fx,vehicle/vfire/fx_vfire_rus_t34
fx,explosions/fx_mortarexp_dirt
fx,maps/see2/fx_vexplode_opel_blitz_gibs
fx,maps/fly/fx_exp_zero_final
fx,system_elements/fx_smk_wht_short_em
// Treadfx
fx,vehicle/treadfx/fx_treadfx_dust
fx,vehicle/treadfx/fx_treadfx_tiger_concrete_lg
fx,vehicle/treadfx/fx_treadfx_tiger_asphalt_lg
fx,vehicle/treadfx/fx_treadfx_tiger_dirt_lg
fx,vehicle/treadfx/fx_treadfx_tiger_grass_lg
fx,vehicle/treadfx/fx_treadfx_tiger_mud_lg
// Exhaust
fx,vehicle/exhaust/fx_exhaust_panther
fx,vehicle/exhaust/fx_exhaust_panzeriv
fx,vehicle/exhaust/fx_exhaust_generic_truck
fx,vehicle/treadfx/fx_treadfx_dust
fx,vehicle/exhaust/fx_exhaust_t34
fx,vehicle/exhaust/fx_exhaust_sherman
fx,vehicle/exhaust/fx_exhaust_tiger
// Destroyed fx
fx,vehicle/vfire/fx_vfire_ger_panther
fx,vehicle/vfire/fx_vsmoke_ger_panther
fx,vehicle/vfire/fx_vfire_ger_kingtiger
fx,vehicle/vfire/fx_vsmoke_tiger_smolder
fx,vehicle/vfire/fx_vsmoke_tiger_billow
fx,vehicle/vfire/fx_vsmoke_tiger_implode
fx,vehicle/vfire/fx_vfire_ger_panzer
fx,vehicle/vfire/fx_vsmoke_ger_panzer
fx,vehicle/vfire/fx_vfire_rus_t34
fx,vehicle/vfire/fx_vsmoke_rus_t34
fx,maps/see2/fx_dust_kick_up_emitter
fx,maps/see2/fx_cloud_flashes
fx,maps/see2/fx_flak_field
fx,maps/see2/fx_tracers_flak88_amb
fx,maps/see2/fx_tracers_flak88_dir
// Intermediate damage fx
fx,vehicle/vfire/fx_vsmoke_ger_panzer
fx,vehicle/vfire/fx_vsmoke_ger_panther
fx,vehicle/vfire/fx_vsmoke_ger_tiger
fx,maps/see2/fx_body_blood_splat
// VEHICLE ANIMATIONS
xanim,o_seelow2_flak_tarp
xanim,v_seelow2_t34scan_right
xanim,v_seelow2_t34scan_straight
rawfile,animtrees/tank.atr
xanim,ai_88antitank_passer_twitch
xanim,ai_88antitank_passer_turnright
xanim,ai_88antitank_passer_turnleft
xanim,ai_88antitank_passer_loadandfire
xanim,ai_88antitank_passer_idle
xanim,ai_88antitank_loader_twitch
xanim,ai_88antitank_loader_turnright
xanim,ai_88antitank_loader_turnleft
xanim,ai_88antitank_loader_loadandfire
xanim,ai_88antitank_loader_idle
xanim,ai_88antitank_leader_twitch
xanim,ai_88antitank_leader_turnright
xanim,ai_88antitank_leader_turnleft
xanim,ai_88antitank_leader_loadandfire
xanim,ai_88antitank_leader_idle
xanim,ai_88antitank_leader_commandright
xanim,ai_88antitank_leader_commandleft
xanim,ai_88antitank_ejecter_twitch
xanim,ai_88antitank_ejecter_turnright
xanim,ai_88antitank_ejecter_turnleft
xanim,ai_88antitank_ejecter_loadandfire
xanim,ai_88antitank_ejecter_idle
xanim,ai_88antitank_aimer_twitch
xanim,ai_88antitank_aimer_turnright
xanim,ai_88antitank_aimer_turnleft
xanim,ai_88antitank_aimer_loadandfire
xanim,ai_88antitank_aimer_idle
xanim,crew_truck_guy8_death_fire
xanim,crew_truck_guy7_death_fire
xanim,crew_truck_guy6_death_fire
xanim,crew_truck_guy5_death_fire
xanim,crew_truck_guy4_death_fire
xanim,crew_truck_guy3_death_fire
xanim,crew_truck_guy2_death_fire
xanim,crew_truck_guy1_death_fire
xanim,crew_truck_passenger_death_fire
xanim,crew_truck_driver_death_fire
xanim,crew_truck_guy8_death_shot
xanim,crew_truck_guy7_death_shot
xanim,crew_truck_guy6_death_shot
xanim,crew_truck_guy5_death_shot
xanim,crew_truck_guy4_death_shot
xanim,crew_truck_guy3_death_shot
xanim,crew_truck_guy2_death_shot
xanim,crew_truck_guy1_death_shot
xanim,crew_truck_passenger_death_shot
xanim,crew_truck_driver_death_shot
xanim,crew_truck_guy8_drive_reaction
xanim,crew_truck_guy7_drive_reaction
xanim,crew_truck_guy6_drive_reaction
xanim,crew_truck_guy5_drive_reaction
xanim,crew_truck_guy4_drive_reaction
xanim,crew_truck_guy3_drive_reaction
xanim,crew_truck_guy2_drive_reaction
xanim,crew_truck_guy1_drive_reaction
xanim,crew_truck_passenger_drive_reaction
xanim,crew_truck_driver_drive_reaction
xanim,crew_truck_guy8_climbin
xanim,crew_truck_guy7_climbin
xanim,crew_truck_guy6_climbin
xanim,crew_truck_guy5_climbin
xanim,crew_truck_guy4_climbin
xanim,crew_truck_guy3_climbin
xanim,crew_truck_guy2_climbin
xanim,crew_truck_guy1_climbin
xanim,crew_truck_guy6_climbout_fast
xanim,crew_truck_guy5_climbout_fast
xanim,crew_truck_guy2_climbout_fast
xanim,crew_truck_guy1_climbout_fast
xanim,crew_truck_guy8_drive_sit_idle
xanim,crew_truck_guy7_drive_sit_idle
xanim,crew_truck_guy6_drive_sit_idle
xanim,crew_truck_guy5_drive_sit_idle
xanim,crew_truck_guy4_drive_sit_idle
xanim,crew_truck_guy3_drive_sit_idle
xanim,crew_truck_guy2_drive_sit_idle
xanim,crew_truck_guy1_drive_sit_idle
xanim,crew_truck_passenger_drive_idle
xanim,crew_truck_driver_drive_idle
xanim,crew_truck_passenger_climbin
xanim,crew_truck_driver_climbin
xanim,crew_truck_guy8_climbout
xanim,crew_truck_guy7_climbout
xanim,crew_truck_guy6_climbout
xanim,crew_truck_guy5_climbout
xanim,crew_truck_guy4_climbout
xanim,crew_truck_guy3_climbout
xanim,crew_truck_guy2_climbout
xanim,crew_truck_guy1_climbout
xanim,crew_truck_passenger_climbout
xanim,crew_truck_driver_climbout
xanim,crew_truck_guy8_sit_idle
xanim,crew_truck_guy7_sit_idle
xanim,crew_truck_guy6_sit_idle
xanim,crew_truck_guy5_sit_idle
xanim,crew_truck_guy4_sit_idle
xanim,crew_truck_guy3_sit_idle
xanim,crew_truck_guy2_sit_idle
xanim,crew_truck_guy1_sit_idle
xanim,crew_truck_passenger_sit_idle
xanim,crew_truck_driver_sit_idle
// VEHICLE DATA
rawfile,vehicles/see2_panther
rawfile,vehicles/see2_tiger
rawfile,vehicles/see2_panzeriv
rawfile,vehicles/opel
rawfile,vehicles/see2_ot34
rawfile,vehicles/see2_t34
rawfile,vehicles/see2_flak88
rawfile,vehicles/il2
rawfile,vehicles/t34
awfile,vehicles/panzeriv
// VEHICLE MODELS
xmodel,vehicle_rus_tracked_t34
xmodel,vehicle_rus_tracked_t34_dmg
xmodel,vehicle_rus_tracked_ot34_d
xmodel,vehicle_ger_tracked_panther
xmodel,vehicle_ger_tracked_panther_dmg1
xmodel,vehicle_ger_tracked_panther_d
xmodel,vehicle_ger_tracked_panther_d_base
xmodel,vehicle_ger_tracked_panther_d_turret
xmodel,vehicle_ger_tracked_king_tiger
xmodel,vehicle_ger_tracked_king_tiger_dmg1
xmodel,vehicle_ger_tracked_king_tiger_d
xmodel,vehicle_ger_tracked_king_tiger_d_base
xmodel,vehicle_ger_tracked_king_tiger_d_turret
xmodel,vehicle_ger_tracked_panzer4v1
xmodel,vehicle_ger_tracked_panzer4v1_dmg1
xmodel,vehicle_ger_tracked_panzer4_d
xmodel,vehicle_ger_tracked_panzer4_d_base
xmodel,vehicle_ger_tracked_panzer4_d_turret
xmodel,vehicle_ger_wheeled_covered_opel_blitz
xmodel,vehicle_ger_wheeled_covered_opel_blitz_d
xmodel,vehicle_rus_airplane_il2
xmodel,artillery_ger_flak88_d
// VEHICLE WEAPONS DATA & MODELS
xmodel,weapon_machinegun_tiger
xmodel,katyusha_rocket
weapon,sp/allied_coaxial_mg
weapon,sp/see2_ot34_Turret
weapon,sp/see2_panther_Turret
weapon,sp/see2_tiger_Turret
weapon,sp/see2_t34_Turret
weapon,sp/panther_coaxial_mg
weapon,sp/see2_panzeriv_Turret
weapon,sp/see2_Flak88_Turret
weapon,sp/tiger_coaxial_mg
weapon,sp/panzeriv_coaxial_mg
weapon,sp/allied_hull_flamethrower
weapon,sp/t34_Turret
weapon,sp/panzeriv_turret
// VEHICLE GEAR
xmodel,vehicle_rus_tracked_t34_seta_body
xmodel,vehicle_rus_tracked_t34_seta_turret
xmodel,vehicle_rus_tracked_t34_setb_body
xmodel,vehicle_rus_tracked_t34_setb_turret
xmodel,vehicle_rus_tracked_t34_setc_body
xmodel,vehicle_rus_tracked_t34_setc_turret
xmodel,vehicle_rus_tracked_t34_setd_body
xmodel,vehicle_rus_tracked_t34_setd_turret
xmodel,vehicle_ger_tracked_panther_seta_body
xmodel,vehicle_ger_tracked_panther_seta_turret
xmodel,vehicle_ger_tracked_panther_setb_body
xmodel,vehicle_ger_tracked_panther_setb_turret
xmodel,vehicle_ger_tracked_panther_setc_body
xmodel,vehicle_ger_tracked_panther_setc_turret
// VEHICLE MATERIALS
material,tank_shell,,
////////////////////////////////////
// END VEHICLES
////////////////////////////////////
localize,see3
// SOUND
sound,see3,see3,all_sp
sound,weapons,audio_test_tuey,all_sp
sound,common,see3,all_sp
sound,character,see3,all_sp
sound,vehicles,see2,all_sp
sound,generic,see3,all_sp
sound,voiceovers,see3,all_sp
sound,requests,see3,all_sp
sound,projectiles,see3,all_sp
sound,us_battlechatter,see3,all_sp
sound,ge_battlechatter,see3,all_sp
sound,physics,see3,all_sp
Code:
#include maps\_utility;
#include common_scripts\utility;
#using_animtree( "generic_human" );
main()
{
/*--------------------
PRECACHE STUFF
----------------------*/
precacheString(&"SEE3_INTROSCREEN_TITLE");
precacheString(&"SEE3_INTROSCREEN_DATE");
precacheString(&"SEE3_INTROSCREEN_PLACE");
precacheString(&"SEE3_INTROSCREEN_INFO");
precacheString(&"SEE3_INTROSCREEN_INFO2");
precacheshader("black");
/*--------------------
SCRIPT_VEHICLES
----------------------*/
maps\_see2_panzeriv::main( "vehicle_ger_tracked_panzer4" );
maps\_see2_t34::main( "vehicle_rus_tracked_t34" );
level.dodgeloadout = true; // <---??
level.custom_introscreen = ::custom_introscreen;
// maps\_panther::main( "vehicle_ger_tracked_panther" )
maps\see3_fx::main();
maps\see3_amb::main();
maps\see3_anim::main();
maps\_load::main();
set_loadout();
/*--------------------
FLAGS
----------------------*/
flag_init("introscreen_completed");
flag_init("Panzer_destroyed");
flag_init("T34_destroyed");
flag_init("trenchwar_start");
flag_init("obj1_done");
flag_init("obj2_done");
flag_init("obj3_done");
/*--------------------
END OF FLAGS
----------------------*/
//////////////////////////////////////---Threads---//////////////////////////////////////////////////////////////////////
// thread player_setup();
thread ai_teams_setup();
thread do_custom_introscreen();
thread obj1();
}
// Sets the custom weapon loadout
set_loadout()
{
maps\_loadout::add_weapon( "panzerschrek" );
maps\_loadout::add_weapon( "stg44" );
maps\_loadout::add_weapon( "stielhandgranate" );
maps\_loadout::add_weapon( "m8_white_smoke" );
maps\_loadout::set_secondary_offhand( "smoke" );
maps\_loadout::set_laststand_pistol( "walther" );
maps\_loadout::set_player_viewmodel( "viewmodel_ger_wermacht_arms");
maps\_loadout::set_player_interactive_hands( "viewmodel_ger_wermacht_player" );
maps\_loadout::set_switch_weapon( "stg44" ); // Switches the player's weapon once he spawns in
level.campaign = "german"; // Sets the campaign, which is used for battlechatter and other various scripts
mptype\player_usa_marine::precache(); // Precaches the 3rd person model (for when playing coop)
}
ai_teams_setup()
{
// Spawners
array_thread( getEntArray( "russians", "script_noteworthy" ), ::add_spawn_function, ::setTeam, "axis" );
//array_thread( getEntArray( "germans", "script_noteworthy" ), ::add_spawn_function, ::setTeam, "allies" );
array_thread( getAiArray( "axis" ), ::setTeam, "allies" );
}
// Thanks Sparks ;)
setTeam( team )
{
/*--------------------
CONFIGURES GERMANS AS FRIENDLIES AND RUSSIANS AS BADDIES
----------------------*/
self.team = team;
if( team == "allies" )
{
self maps\_names::get_name_for_nationality( "german" );
self.goal_radius = 64;
}
else
{
// Couldn't figure out how to remove American names =0(
// Null .name and .script_friendName cause switch statement errors in names utility
// Not too important to spend time figuring out
self.goal_radius = 1024;
}
} // setTeam()
panzer_manage()
{
panzer = getEnt( "front_panzer", "targetname" );
thread maps\_vehicle::gopath(panzer);
trig = getEnt( "tankbattle_trig", "targetname" );
trig waittill("trigger");
// panzer.health = 10;
panzer thread panzer_controller();
}
panzer_controller()
{
// self setVehWeapon( "T34_turret" ); DO NOT USE!! Creates no shooting bug!
t34 = getEnt( "t34", "targetname" );
self thread maps\_vehicle::mgoff();
self setturrettargetent(t34);
self fireWeapon();
}
t34_manage()
{
t34 = getEnt( "t34", "targetname" );
t34 thread maps\_vehicle::mgoff();
trig = getEnt( "tankbattle_trig", "targetname" );
trig waittill("trigger");
// thread maps\_vehicle::gopath(t34);
t34 thread t34_controller();
}
t34_controller()
{
// self setVehWeapon( "T34_turret" ); DO NOT USE!! Creates no shooting bug!
panzer = getEnt( "front_panzer", "targetname" );
self setturrettargetent(panzer);
wait(3);
// panzer waittill("reached_end_node");
self fireWeapon();
radiusdamage( panzer.origin, 100, panzer.health, panzer.health );
flag_set("Panzer_destroyed");
}
do_custom_introscreen()
{
custom_introscreen(&"SEE3_INTROSCREEN_TITLE", &"SEE3_INTROSCREEN_DATE", &"SEE3_INTROSCREEN_PLACE", &"SEE3_INTROSCREEN_INFO", &"SEE3_INTROSCREEN_INFO2" );
}
custom_introscreen( string1, string2, string3, string4, string5 )
{
level.introstring = [];
wait 0.5;
//Title of level
if( IsDefined( string1 ) )
{
maps\_introscreen::introscreen_create_line( string1, "lower_left" );
}
wait( 2 );
if( IsDefined( string2 ) )
{
maps\_introscreen::introscreen_create_line( string2, "lower_left" );
wait 2;
}
if( IsDefined( string3 ) )
{
maps\_introscreen::introscreen_create_line( string3, "lower_left" );
wait 1.5;
}
if( IsDefined( string4 ) )
{
maps\_introscreen::introscreen_create_line( string4, "lower_left" );
wait 1.5;
}
if( IsDefined( string5 ) )
{
maps\_introscreen::introscreen_create_line( string5, "lower_left" );
}
wait 3;
level thread maps\_introscreen::introscreen_fadeOutText();
}
obj1_follow() // called from obj1();
{
self endon("death");
while (1)
{
wait 0.5;
objective_position(1, self.origin);
}
}
WatchPlayerDist() // eXsolved's Script
{
level endon("Panzer_destroyed");
DistanceMs = 1000;
Entity = GetEnt( "front_panzer", "targetname" );
wait_for_first_player();
player = getplayers();
while( 1 )
{
Distance = distance2d( player[0].origin, Entity.origin );
if( Distance > DistanceMs )
{
// Mission Failed!
SetDvar( "ui_deadquote", &"SCRIPT_MISSIONFAIL_KILLTEAM_RUSSIAN" );
missionfailed();
}
wait 0.05;
}
}
/* -----------------------
OBJECTIVES
----------------------- */
obj1()
{
// flag_wait( "introscreen_completed" );
thread panzer_manage();
thread t34_manage();
thread WatchPlayerDist();
panzer = getEnt( "front_panzer", "targetname" );
panzer thread obj1_follow();
objective_add(1, "active", &"SEE3_OBJ1");
objective_current(1);
flag_wait("Panzer_destroyed");
objective_state(1, "done");
flag_set( "obj1_done" );
thread obj2();
}
obj2()
{
flag_wait( "obj1_done" );
flag_set("trenchwar_start");
objective_add(2, "active", &"SEE3_OBJ2",getent("obj2",
"targetname").origin);
objective_current(2);
flag_wait("T34_destroyed");
objective_state(2, "done");
flag_set("obj2_done");
}