127 vector from = FreeDebugCamera.GetInstance().GetPosition();
129 vector to = from + ( dir * 10000 );
133 int contact_component;
134 set<Object> objects =
new set<Object>;
135 bool selected =
false;
139 for (
int i = 0; i < objects.Count(); ++i )
141 Object obj = objects.Get(i);
147 if ( sc_object == NULL )
191 vector from = FreeDebugCamera.GetInstance().GetPosition();
193 vector to = from + ( dir * 10000 );
197 int contact_component;
198 set<Object> objects =
new set<Object>;
199 bool selected =
false;
203 for (
int i = 0; i < objects.Count(); ++i )
205 Object obj = objects.Get(i);
254 vector from = FreeDebugCamera.GetInstance().GetPosition();
256 vector to = from + ( dir * 10000 );
260 int contact_component;
264 if (
DayZPhysics.
RaycastRV(from, to, contact_pos, contact_dir, contact_component, NULL, NULL, NULL,
false,
true) )
287 vector from = FreeDebugCamera.GetInstance().GetPosition();
289 vector to = from + ( dir * 10000 );
293 int contact_component;
316 SceneLoad( PluginMissionConfig.GetInstance().GetSceneEditorName() );
330 for (
int i = 0; i < scene_objects.Count(); i++ )
335 if (linked_scene_objects_indices)
337 for (
int j = 0; j < linked_scene_objects_indices.Count(); j++ )
339 int index = linked_scene_objects_indices.Get(j);
340 if ( index >= 0 && index < scene_objects.Count() )
358 for (
int i = 0; i < scene_objects.Count(); i++ )
372 if (
GetGame().IsMultiplayer() )
417 if(
GetGame().GetUIManager().GetMenu() )
432 if(
GetGame().GetUIManager().GetMenu() )
443 if ( selected_obj != NULL )
448 for (
int i = 0; i < scene_objects.Count(); i++ )
458 scene_objects.RemoveItem(selected_obj);
518 for (
int i = 0; i < attachments.Count(); i++ )
601 selected_obj.
SetHealth(
Math.
Clamp ( value, 0, selected_obj_EAI.GetMaxHealth(
"",
"") ));
616 vector cam_pos = FreeDebugCamera.GetInstance().GetPosition();
618 vector view_target = obj_pos;
624 cam_pos[0] = cam_pos[0] + ( obj_size[0] * 2 );
625 cam_pos[1] = cam_pos[1] + obj_size[1] + 0.5;
626 cam_pos[2] = cam_pos[2] + ( obj_size[2] * 2 );
628 view_target[1] = view_target[1] + (obj_size[1] * 0.5);
630 vector cam_dir = view_target - cam_pos;
633 FreeDebugCamera.GetInstance().SetPosition(cam_pos);
634 FreeDebugCamera.GetInstance().SetDirection(cam_dir);
758 PluginMissionConfig.GetInstance().SetSceneEditorName(scene_name);
858 void SetWeather(
float overcast,
float rain,
float fog,
float wind_force)
869 void SetDate(
int year,
int month,
int day,
int hour,
int minute )
884 for (
int i = 0; i < scene_objects.Count(); i++ )
902 string cls = scene_object.
GetObject().ClassName();
903 string wrapped_script =
"void scMngMain() \n{\n PluginSceneManager se = GetPlugin(Type(\"PluginSceneManager\")); \n SceneObject this_obj = se.GetSceneObjectByIndex(" + index.ToString() +
"); \n " + cls +
" this_eai = this_obj.GetObject(); \n " + script +
"\n}\n";
988 for (
int i = 0; i < scene_objects.Count(); i++ )
1045 if ( scene_objects != NULL )
1047 if ( index > -1 && index < scene_objects.Count() )
1049 return scene_objects.Get( index );
1063 if ( scene_objects != NULL )
1065 for (
int i = 0; i <= scene_objects.Count(); ++i )
1117 protected PluginDeveloper m_ModuleDeveloper;
1147 if (
GetGame().IsMultiplayer() )
1155 for (
int i = 0; i < objects.Count(); ++i )
1178 for ( j = 0; j < linked_scene_objects.Count(); j++ )
1187 if (linked_scene_objects)
1189 for ( j = 0; j < linked_scene_objects.Count(); j++ )
1231 if ( widget_under_mouse != NULL && widget_under_mouse.GetName() ==
"pnl_SceneControl" )
1266 vector from = FreeDebugCamera.GetInstance().GetPosition();
1267 vector to = from + ( dir * 10000 );
1270 int contact_component;
const CallID CALL_ID_SCENE_EDITOR_COMMAND
Param CallMethod(CallID call_id, Param params)
class OptionSelectorMultistate extends OptionSelector class_name
PluginBase GetPlugin(typename plugin_type)
proto native UIManager GetUIManager()
override ScriptCallQueue GetCallQueue(int call_category)
proto native vector GetPointerDirection()
Returns the direction where the mouse points, from the camera view.
proto native bool ExecuteEnforceScript(string expression, string mainFnName)
Delevoper only: Executes Enforce Script expression, if there is an error, is printed into the script ...
proto native Input GetInput()
static proto bool RaycastRV(vector begPos, vector endPos, out vector contactPos, out vector contactDir, out int contactComponent, set< Object > results=NULL, Object with=NULL, Object ignore=NULL, bool sorted=false, bool ground_only=false, int iType=ObjIntersectView, float radius=0.0, CollisionFlags flags=CollisionFlags.NEARESTCONTACT)
Raycasts world by given parameters.
static Shape DrawSphere(vector pos, float size=1, int color=0x1fff7f7f, ShapeFlags flags=ShapeFlags.TRANSP|ShapeFlags.NOOUTLINE)
static Shape DrawLine(vector from, vector to, int color=0xFFFFFFFF, int flags=0)
static void EnableFreeCameraSceneEditor(PlayerBase player)
void SelectAndFocusPlayerObject()
void ExecuteInitScripts()
static const int SCENE_EDITOR_CMD_POPUP
void SetRotationAngle(int angle)
SceneObject m_SelectedObject
bool SceneCanDelete(string scene_name)
void SetLoadPlayerPos(bool save)
void SelectedObjectDuplicate()
void ~PluginSceneManager()
ref array< ref KeyBinding > m_KeyBindings
void Event_OnClickMiddle()
ref SceneData m_SceneData
array< ref ScenePlayer > GetScenePlayers()
void OnMouseWheel(int wheel)
void RestoreSceneObjectsLinks()
void DeleteSceneObject(SceneObject obj)
void SelectedObjectSetDamage(float value)
void SceneLoad(string scene_name)
void SelectedObjectSetPosZ(float value)
void LinkSceneObjects(SceneObject scene_object1, SceneObject scene_object2)
TStringArray GetSceneList()
void SceneDuplicate(string scene_name)
bool SceneDelete(string scene_name)
SceneObject GetSceneObjectByIndex(int index)
SceneObject Event_OnDoubleClick()
void SetDrawSelection(bool draw)
void SelectedObjectSetPosX(float value)
void PluginSceneManager()
SceneObject GetSceneObjectByEntity(EntityAI entity)
array< ref SceneObject > GetSceneObjects()
void SelectedObjectFocus()
void SceneEditorMenuCmdSave()
ref array< Shape > m_ShapesSceneObjects
void SelectedObjectSetPosY(float value)
static string SCENE_DEFAULT_NAME
ref array< Shape > m_RulerLines
void SceneEditorMenuCmdRefresh()
array< ref SceneObject > GetSceneObjectsAll()
void SelectObject(SceneObject obj)
void FreeCameraControlDisable()
static const int SCENE_EDITOR_CMD_SAVE
void ExecuteEnforceScript(int index, SceneObject scene_object, string script)
float m_TimeLastClickRelease
vector GetMousePositionInScene()
float m_TimeLastClickPress
ref array< vector > m_RulerPoints
static string SCENE_SUFIX
SceneObject GetSelectedSceneObject()
string m_ClassBrowserSelected
PluginDeveloper m_ModuleDeveloper
override void OnDestroy()
void SelectedObjectAddAttachment(string att_name)
void UnlinkSceneObjects(SceneObject scene_object1, SceneObject scene_object2)
PluginConfigScene m_ModuleConfigScene
SceneData GetLoadedScene()
static const int SCENE_EDITOR_CMD_REFRESH
bool AreSceneObjectsLinked(SceneObject scene_object1, SceneObject scene_object2)
void SceneRename(string scene_name, string new_name)
void DeleteSelectedObject()
static PluginKeyBinding instance
void SetWeather(float overcast, float rain, float fog, float wind_force)
PluginConfigDebugProfile m_ModuleConfigDebugProfile
static PluginSceneManager GetInstance()
void FreeCameraControlEnable()
void SelectedObjectSetRot(float dir)
void SelectedObjectRemoveAttachment(EntityAI e)
void SelectClassName(string class_name)
void SetDate(int year, int month, int day, int hour, int minute)
ref array< Shape > m_RulerSpheres
void SceneEditorMenuCmdPopup(string message)
int GetSelectedSceneObjectIndex()
void EditorShapeDeselect()
array< SceneObject > GetLinkedSceneObjects()
bool IsLinkedWithSceneObject(SceneObject scene_object)
void SetRotation(float rot)
ref array< int > m_LinkedSceneObjectsIndices
void SetHealth(float value)
void AddAttachment(string att_name)
void EditorLineAdd(SceneObject obj)
void LinkSceneObject(SceneObject scene_object, bool draw_line=true)
void EditorLineRemove(SceneObject obj)
array< EntityAI > GetAttachments()
void SetPosition(vector pos)
void UnlinkSceneObject(SceneObject scene_object)
proto void Call(func fn, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
adds call into the queue with given parameters and arguments (arguments are held in memory until the ...
proto native UIScriptedMenu GetMenu()
Returns most-top open menu.
proto native UIScriptedMenu EnterScriptedMenu(int id, UIMenuPanel parent)
Create & open menu with specific id (see MenuID) and set its parent.
void ShowUICursor(bool visible)
bool Back()
Close top window on windows stack, returns true when any window is closed.
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
proto float Normalize()
Normalizes vector. Returns length.
proto native CGame GetGame()
array< string > TStringArray
proto native vector Vector(float x, float y, float z)
Vector constructor from components.
static proto float Clamp(float value, float min, float max)
Clamps 'value' to 'min' if it is lower than 'min', or to 'max' if it is higher than 'max'.
const string STRING_EMPTY