15 protected const string PARAM_FOG =
"WeatherInitFog";
64 string file_path =
GetPathScenes()+
"\\"+scene_name+
"."+PluginSceneManager.SCENE_SUFIX;
65 string file_path_new =
GetPathScenes()+
"\\"+scene_name_new+
"."+PluginSceneManager.SCENE_SUFIX;
74 string file_path =
GetPathScenes()+
"\\"+scene_name+
"."+PluginSceneManager.SCENE_SUFIX;
83 string file_path =
GetPathScenes()+
"\\"+scene_name+
"."+PluginSceneManager.SCENE_SUFIX;
84 string file_path_new = file_path;
89 file_path_new =
GetPathScenes()+
"\\"+scene_name+
"_copy"+i.ToString()+
"."+PluginSceneManager.SCENE_SUFIX;
111 string path_find_pattern =
GetPathScenes()+
"/*."+PluginSceneManager.SCENE_SUFIX;
117 int pos = file_name.
IndexOf(
".");
121 list.Insert( file_name.
Substring(0, pos) );
124 found =
FindNextFile(file_handler, file_name, file_attr);
161 PluginSceneManager module_scene_editor = PluginSceneManager.Cast(
GetPlugin(PluginSceneManager) );
163 EntityAI player = PluginSceneManager.PLAYER;
248 if ( players.Count() > 0 )
250 ScenePlayer plyr = players.Get(0);
257 cfg_param_player_pos.SetValue(plyr.GetPositionAsString());
261 cfg_param_player_rot.SetValue(plyr.GetRotation());
265 cfg_param_player_hlt.SetValue(plyr.GetHealth());
281 for (
int i = 0; i < objects.Count(); ++i )
290 CfgParamArray cfg_param_obj = CfgParamArray.Cast( GetParamByName(param_name,
CFG_TYPE_ARRAY) );
306 cfg_param_obj_hlt.SetValue(obj.
GetHealth());
314 int attcount = e_obj.GetInventory().AttachmentCount();
319 CfgParamArray cfg_param_att = CfgParamArray.Cast( GetParamByName(param_name_att,
CFG_TYPE_ARRAY) );
320 cfg_param_att.Clear();
322 for (
int att = 0; att < attcount; att++)
324 EntityAI attachment = e_obj.GetInventory().GetAttachmentFromIndex(att);
326 CfgParamString cfg_param_att_str =
new CfgParamString(
"");
327 cfg_param_att_str.SetValue( attachment.GetType() );
328 cfg_param_att.InsertValue( cfg_param_att_str );
333 if ( linked_scene_objects.Count() > 0 )
336 CfgParamArray cfg_param_lnk = CfgParamArray.Cast( GetParamByName( param_name_lnk,
CFG_TYPE_ARRAY ) );
337 cfg_param_lnk.Clear();
339 for (
int lnk = 0; lnk < linked_scene_objects.Count(); lnk++ )
341 CfgParamInt cfg_param_lnk_int =
new CfgParamInt(
"");
343 int index = objects.Find( linked_scene_objects.Get(lnk) );
347 cfg_param_lnk_int.SetValue( index );
348 cfg_param_lnk.InsertValue( cfg_param_lnk_int );
356 cfg_obj_count.SetValue(objects.Count());
413 int year, month, day, hour, minute;
523 if ( PluginSceneManager.GetInstance().GetLoadPlayerPos() )
526 vector start_pos = cfg_ply_pos.GetValue().ToVector();
531 scn_player.SetPosition(cfg_ply_pos.GetValue().ToVector());
534 scn_player.SetRotation(cfg_ply_rot.GetValue());
540 float health2 = cfg_ply_hlt.GetValue();
542 health2 = scn_player.GetMaxHealth();
544 scn_player.SetHealth(health2);
558 int obj_count = cfg_obj_count.GetValue();
560 for (
int i = 0; i < obj_count; ++i )
565 CfgParamArray cfg_obj = CfgParamArray.Cast( GetParamByName(param_name,
CFG_TYPE_ARRAY) );
581 scn_obj.
SetHealth(cfg_obj_hlt.GetValue());
589 for (
int lnko = 0; lnko < cfg_obj_links.Count(); lnko++ )
591 CfgParamInt cfg_obj_param_lnk_int = CfgParamInt.Cast( cfg_obj_links.Get(lnko) );
597 if ( ParamExist(param_name_att) )
599 CfgParamArray cfg_param_att = CfgParamArray.Cast( GetParamByName(param_name_att,
CFG_TYPE_ARRAY) );
603 for (
int j = 0; j < cfg_param_attachments.Count(); ++j )
605 CfgParamString cfg_param_att_str = CfgParamString.Cast( cfg_param_attachments.Get(j) );
606 scn_obj.
GetObject().GetInventory().CreateAttachment( cfg_param_att_str.GetValue() );
const int CFG_TYPE_STRING
PluginBase GetPlugin(typename plugin_type)
proto native World GetWorld()
const string PARAM_OBJ_ISCR
const string PARAM_PLAYER
const string PARAM_OBJ_LNK
override string GetFileName()
void LoadSceneWeather(SceneData scene)
TStringArray m_CfgTemplate
void SceneRename(string scene_name, string scene_name_new)
string EncodeInitScript(string script)
void LoadSceneSettings(SceneData scene)
void SaveSceneWeather(SceneData scene)
TStringArray GetSceneList()
void SceneDelete(string scene_name)
const string PARAM_OBJ_ATT
const string PARAM_MINUTE
const string PARAM_OBJ_TYPE
const string PARAM_OVERCAST
void LoadSceneObjects(SceneData scene)
const string PARAM_WIND_F
void SaveScenePlayer(SceneData scene)
SceneData SceneDataLoad(string scene_name)
const string PARAM_OBJ_ROT
void SceneDataSave(SceneData scene)
const string PARAM_OBJ_HLT
void LoadScenePlayer(SceneData scene)
const string PARAM_OBJ_POS
string DecodeInitScript(string script)
const string FILE_ROOT_SCENES
void SceneDuplicate(string scene_name)
const string PARAM_OBJ_DMG
const string PARAM_MISSION
void SaveSceneSettings(SceneData scene)
const string PARAM_OBJ_NAME
void SaveSceneObjects(SceneData scene)
const string PARAM_OBJ_COUNT
void SetInitRain(float value)
void SetNameScene(string name)
void SetInitFog(float value)
array< ref SceneObject > GetSceneObjects()
void SetInitHour(int value)
ScenePlayer CreateScenePlayer()
void SetInitMonth(int value)
void SetInitMinute(int value)
void SetInitOvercast(float value)
void SetInitWindForce(float value)
SceneObject CreateSceneObject(string obj_name, vector pos)
void SetInitDay(int value)
void SetInitYear(int value)
array< ref ScenePlayer > GetScenePlayers()
void SetInitTime(float time)
void SetNameMission(string name)
array< SceneObject > GetLinkedSceneObjects()
void SetInitScript(string init_script)
void SetRotation(float rot)
ref array< int > m_LinkedSceneObjectsIndices
void SetHealth(float value)
string GetPositionAsString()
proto void GetDate(out int year, out int month, out int day, out int hour, out int minute)
Get actual ingame world time.
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
proto native CGame GetGame()
array< string > TStringArray
proto native bool MakeDirectory(string name)
Makes a directory.
enum FindFileFlags FindFile(string pattern, out string fileName, out FileAttr fileAttributes, FindFileFlags flags)
proto bool FindNextFile(FindFileHandle handle, out string fileName, out FileAttr fileAttributes)
proto bool FileExist(string name)
Check existence of file.
proto int Replace(string sample, string replace)
Replace all occurrances of 'sample' in 'str' by 'replace'.
proto string Substring(int start, int len)
Substring of 'str' from 'start' position 'len' number of characters.
proto native int IndexOf(string sample)
Finds 'sample' in 'str'. Returns -1 when not found.