From c8d6e6529edced3603401931414df432a3b7031c Mon Sep 17 00:00:00 2001 From: SongWei Date: Sun, 16 Feb 2020 18:06:31 +1100 Subject: [PATCH] sqf --- leoservermod/$PBOPREFIX$ | 1 + leoservermod/config.cpp | 32 ++++++++++++++++++++++++++++++ leoservermod/init.sqf | 6 ++++++ leoservermod/marker.sqf | 42 ++++++++++++++++++++++++++++++++++++++++ mod/main.sqf | 0 5 files changed, 81 insertions(+) create mode 100644 leoservermod/$PBOPREFIX$ create mode 100644 leoservermod/config.cpp create mode 100644 leoservermod/init.sqf create mode 100644 leoservermod/marker.sqf delete mode 100644 mod/main.sqf diff --git a/leoservermod/$PBOPREFIX$ b/leoservermod/$PBOPREFIX$ new file mode 100644 index 0000000..ea6fc79 --- /dev/null +++ b/leoservermod/$PBOPREFIX$ @@ -0,0 +1 @@ +\leoservermod \ No newline at end of file diff --git a/leoservermod/config.cpp b/leoservermod/config.cpp new file mode 100644 index 0000000..a2aaeef --- /dev/null +++ b/leoservermod/config.cpp @@ -0,0 +1,32 @@ +class CfgPatches +{ + class leoservermod + { + // Meta information for editor + name = "leoservermod"; + author = "leo"; + url = "https://leosongwei.github.io/"; + + requiredVersion = 1.69; + + requiredAddons[] = {}; + + units[] = {}; + weapons[] = {}; + // init = "diag_log 'loading leoext...'; call compile preprocessFileLineNumbers '\leoservermod\init.sqf'"; + }; +}; + +class CfgFunctions +{ + class leoservermod + { + class functions + { + class leoservermodInit { + file="\leoservermod\init.sqf"; + postInit=1; + }; + }; + }; +}; \ No newline at end of file diff --git a/leoservermod/init.sqf b/leoservermod/init.sqf new file mode 100644 index 0000000..dafb52e --- /dev/null +++ b/leoservermod/init.sqf @@ -0,0 +1,6 @@ +diag_log "leoext: try to initialize..."; + +_return = "libleoext" callExtension "foooo"; +execVM "\leoservermod\marker.sqf"; + +diag_log format ["leoext: initialize complete! return: %1", _return]; \ No newline at end of file diff --git a/leoservermod/marker.sqf b/leoservermod/marker.sqf new file mode 100644 index 0000000..4bf826e --- /dev/null +++ b/leoservermod/marker.sqf @@ -0,0 +1,42 @@ +leoext_map_markers_information = { + private _info_list = []; + { + private _text = markerText _x; + private _icon_type = markerType _x; // "Empty" == not icon + private _pos = markerPos _x; + private _color = markerColor _x; + + private _marker_info = [_text, _icon_type, _color, _pos]; + if (_icon_type != "") then { + _info_list pushBack _marker_info; + }; + } forEach allMapMarkers; + + _info_list; +}; + +leoext_units_pos = { + private _units_pos = []; + { + private _side = str (side _x); + private _pos = position _x; + + private _unit = [_side, _pos]; + _units_pos pushBack _unit; + } forEach allUnits; + + _units_pos; +}; + +leoext_stop = false; + +[] spawn { + while {!leoext_stop} do { + sleep 1; + diag_log "submitting coordinates..."; + + private _markers = call leoext_map_markers_information; + private _units = call leoext_units_pos; + "libleoext" callExtension ["foo", [[_markers, _units]]]; + }; +} diff --git a/mod/main.sqf b/mod/main.sqf deleted file mode 100644 index e69de29..0000000