Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 02/11/2019 in all areas

  1. 1 point
    Hello everyone, Thought it may be time to write a proper tutorial for my zipties. Location of changes: Mission.Map (Eg. AltisLife.Altis or TanoaLife.Tanoa) Difficulty: Medium Github: https://github.com/Wackbatt/Altis-Life-Zipties 1. Download the files from the github listed above. 2. Navigate to the core folder and drag the zipties folder into it. 3. Go back to your mission root and open functions.hpp and add the following to the very bottom: class zipties { tag = "zipties"; class Functions { file = "core\zipties"; class zip_blindfold {}; class zip_blindfoldAction {}; class zip_gagPlayer {}; class zip_gagAction {}; class zip_interaction {}; class zip_patDown {}; class zip_patDownAction {}; class zip_tie {}; class zip_tieAction {}; class zip_untie {}; class zip_untieFix {}; }; }; 4. Open cfgRemoteExec.hpp and add the following under the client section: F(zipties_fnc_zip_tie,CLIENT) F(zipties_fnc_zip_gagplayer,CLIENT) F(zipties_fnc_zip_blindfold,CLIENT) F(zipties_fnc_zip_patdown,CLIENT) F(zipties_fnc_zip_untieFix,CLIENT) 5. Open stringtable.xml and add the following package at the bottom <Package name="zipties"> <Key ID="STR_NOTF_ziptied"> <Original>%1 was ziptied by someone.</Original> <German>%1 wurde gefesselt.</German> </Key> <Key ID="STR_NOTF_unzipteed"> <Original>%1 was cut loose.</Original> <German>%1 wurde befreit.</German> </Key> <Key ID="STR_ExcessiveTied"> <Original>You have been released automatically for excessive restrainment time</Original> <German>Du wurdest automatisch frei gelassen.</German> </Key> <Key ID="STR_tied"> <Original>You have been restrained by someone.</Original> <German>Du wurdest gefesselt.</German> </Key> <Key ID="STR_Ziptie"> <Original>Ziptie</Original> <German>Fesseln</German> </Key> <Key ID="STR_gag"> <Original>Gag</Original> <German>Knebel</German> </Key> <Key ID="STR_blindfold"> <Original>Blindfold</Original> <German>Augenbinde</German> </Key> </Package> 6. Open description.ext and add the following: class ziptie { name = "ziptie"; sound[] = {"\sounds\ziptie.ogg", 1.0, 1}; titles[] = {}; }; class gag { name = "gag"; sound[] = {"\sounds\gag.ogg", 1.0, 1}; titles[] = {}; }; 6. Add the sounds and icons from the github to the appropriate folders. 7. Go to the config folder and open Config_master.hpp and add the following in the life settings section: ziptie_need_rebel = false; 8. Open Config_vItems.hpp and add the following: class ziptie { variable = "ziptie"; displayName = "STR_Ziptie"; weight = 6; buyPrice = 5000; sellPrice = 1200; illegal = true; edible = -1; icon = "icons\ziptie.paa"; }; class gag { variable = "gag"; displayName = "STR_gag"; weight = 7; buyPrice = 3000; sellPrice = 1000; illegal = true; edible = -1; icon = "icons\gag.paa"; }; class blindfold { variable = "blindfold"; displayName = "STR_blindfold"; weight = 7; buyPrice = 3500; sellPrice = 1200; illegal = true; edible = -1; icon = "icons\blindfold.paa"; }; 9. Open core\actions and replace the 3 files with the files from the git repo. 10. Goto core\functions and open actionkeyhandler and find if (playerSide isEqualTo west && {player getVariable ["isEscorting",false]}) exitWith { [] call life_fnc_copInteractionMenu; }; and add the following underneath: if (playerSide isEqualTo civilian && {player getVariable ["isEscorting",false]}) exitWith { [] call zipties_fnc_zip_interaction; }; and in the same file find if ((_curObject getVariable ["restrained",false]) && !dialog && playerSide isEqualTo west) then { [_curObject] call life_fnc_copInteractionMenu; }; and add the following underneath: if ((_curObject getVariable ["ziptied",true]) && !dialog) then { [_curObject] call zipties_fnc_zip_interaction; }; 11. Open keyhandler in the same folder and replace line 24 to 26 with the following: if ((_code in (actionKeys "GetOver") || _code in (actionKeys "salute") || _code in (actionKeys "SitDown") || _code in (actionKeys "Throw") || _code in (actionKeys "GetIn") || _code in (actionKeys "GetOut") || _code in (actionKeys "Fire") || _code in (actionKeys "ReloadMagazine") || _code in [16,18]) && ((player getVariable ["restrained",false]) || (player getVariable ["playerSurrender",false]) || (player getVariable ["ziptied",false]) || life_isknocked || life_istazed)) exitWith { true; }; 12. Add the following to the if statement for case 21: !(player getVariable ["ziptied",false]) and replace case 19 with the following: case 19: { if (_shift) then {_handled = true;}; if (_shift && playerSide isEqualTo west && {!isNull cursorObject} && {cursorObject isKindOf "Man"} && {(isPlayer cursorObject)} && {(side cursorObject in [civilian,independent])} && {alive cursorObject} && {cursorObject distance player < 3.5} && {!(cursorObject getVariable "Escorting")} && {!(cursorObject getVariable "restrained")} && {speed cursorObject < 1}) then { [] call life_fnc_restrainAction; } else { [] call zipties_fnc_zip_tieAction; }; }; 13. Replace the entirety of fn_pullOutVeh.sqf with the file from the github. 14. Open core\medical and open onplayerkilled and add the following underneath the set variables: [_unit] call zipties_fnc_zip_untieFix; 15. Open core\vehicle and open vinteractionmenu and find if (playerSide isEqualTo west) then { and add the following above it: _Btn4 ctrlSetText localize "STR_vInAct_PullOut"; _Btn4 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_pulloutAction; closeDialog 0;"; if (crew _curTarget isEqualTo []) then {_Btn4 ctrlEnable false;}; then remove _Btn4 ctrlEnable false; from around line 127. 16. Open core\init.sqf and find player setVariable ["restrained",false,true]; player setVariable ["Escorting",false,true]; player setVariable ["transporting",false,true]; player setVariable ["playerSurrender",false,true]; and add the following underneath: player setVariable ["ziptied",false,true]; player setVariable ["blindfolded",false,true]; player setVariable ["gagged",false,true]; 17. Repack your pbo and relaunch your server. Additional Notes: It is up to you to include the 50+ changes to other files in the framework to prevent ziptied people from performing certain actions like gathering, mining etc. I eventually will be making this more stream lined so that these changes are not needed so make sure you keep your files up to date. Leave any comments below regarding changes/updates and fixes, feel free to fork the repo and commit any changes you feel need to be made.
  2. 1 point
    Hey im releasing my phone that i made when i was working on my lakeside files wich im still working on but thought why not release a peace of it here you go feel free to edit it Picture: My GamerTag Devza and if you need any help add my discord devza#0113 Reminder: im not the best to design guis so please critic so i can make a new version thats better How To Download it should be pretty easy Go inside youre Dialog and open player_inv.hpp and repla it whit this: #include "player_sys.sqf" class playerSettings { idd = playersys_DIALOG; movingEnable = true; enableSimulation = true; class controlsBackground { class HG: life_RscPicture { idc = -1; text = "images\iphone8.paa"; x = 0.0130208 * safezoneW + safezoneX; y = 0.203 * safezoneH + safezoneY; w = 0.332292 * safezoneW; h = 0.583 * safezoneH; }; class HG2: life_RscPicture { idc = -1; text = "images\backpack.paa"; x = 0.270833 * safezoneW + safezoneX; y = 0.4758 * safezoneH + safezoneY; w = 0.171875 * safezoneW; h = 0.297 * safezoneH; }; class moneyTitle: life_RscText { idc = -1; text = ""; x = 0.757813 * safezoneW + safezoneX; y = 0.6914 * safezoneH + safezoneY; w = 0.0572917 * safezoneW; h = 0.022 * safezoneH; }; class moneyStatusInfo: life_RscStructuredText { idc = 2015; sizeEx = 0.020; text = ""; x = 0.116146 * safezoneW + safezoneX; y = 0.61 * safezoneH + safezoneY; w = 0.126042 * safezoneW; h = 0.077 * safezoneH; }; class PlayersWeight : life_RscTitle { idc = carry_weight; style = 1; x = 0.322396 * safezoneW + safezoneX; y = 0.434 * safezoneH + safezoneY; w = 0.0859375 * safezoneW; h = 0.033 * safezoneH; text = ""; }; class itemHeader: life_RscText { idc = -1; text = ""; x = 0.787604 * safezoneW + safezoneX; y = 0.1986 * safezoneH + safezoneY; w = 0.0744792 * safezoneW; h = 0.022 * safezoneH; }; }; class controls { class moneyEdit: life_RscEdit { idc = 2018; text = "1"; sizeEx = 0.030; x = 0.163126 * safezoneW + safezoneX; y = 0.7156 * safezoneH + safezoneY; w = 0.0802083 * safezoneW; h = 0.022 * safezoneH; }; class NearPlayers: life_RscCombo { idc = 2022; x = 0.116146 * safezoneW + safezoneX; y = 0.6892 * safezoneH + safezoneY; w = 0.126042 * safezoneW; h = 0.022 * safezoneH; }; class moneyDrop: life_RscButtonMenu { idc = 2001; text = "Give"; x = 0.116146 * safezoneW + safezoneX; y = 0.7156 * safezoneH + safezoneY; w = 0.0401042 * safezoneW; h = 0.022 * safezoneH; tooltip = "Give money"; onButtonClick = "[] call life_fnc_giveMoney"; }; class licenseHeader: life_RscStructuredText { idc = -1; text = "Licenses"; x = 0.116146 * safezoneW + safezoneX; y = 0.379 * safezoneH + safezoneY; w = 0.06875 * safezoneW; h = 0.022 * safezoneH; }; class Licenses_Menu: life_RscControlsGroup { idc = -1; x = 0.116146 * safezoneW + safezoneX; y = 0.412 * safezoneH + safezoneY; w = 0.126042 * safezoneW; h = 0.11 * safezoneH; class controls { class life_Licenses: life_RscStructuredText { idc = 2014; sizeEx = 0.020; text = ""; x = 0.116146 * safezoneW + safezoneX; y = 0.412 * safezoneH + safezoneY; w = 0.126042 * safezoneW; h = 0.11 * safezoneH; }; }; }; class itemList: life_RscListbox { idc = item_list; x = 0.304062 * safezoneW + safezoneX; y = 0.5836 * safezoneH + safezoneY; w = 0.103125 * safezoneW; h = 0.088 * safezoneH; sizeEx = 0.040; }; class itemEdit: life_RscEdit { idc = item_edit; text = "1"; x = 0.305208 * safezoneW + safezoneX; y = 0.676 * safezoneH + safezoneY; w = 0.0401042 * safezoneW; h = 0.022 * safezoneH; }; class iNearPlayers: life_RscCombo { idc = 2023; x = 0.347605 * safezoneW + safezoneX; y = 0.676 * safezoneH + safezoneY; w = 0.0630208 * safezoneW; h = 0.022 * safezoneH; }; class RemoveButton: life_RscButtonMenu { text = "R"; x = 0.391146 * safezoneW + safezoneX; y = 0.7002 * safezoneH + safezoneY; w = 0.0171875 * safezoneW; h = 0.033 * safezoneH; tooltip = "Remove"; onButtonClick = "[] call life_fnc_removeItem;"; }; class UseButton: life_RscButtonMenu { text = "U"; x = 0.368229 * safezoneW + safezoneX; y = 0.7002 * safezoneH + safezoneY; w = 0.0171875 * safezoneW; h = 0.033 * safezoneH; onButtonClick = "[] call life_fnc_useItem;"; tooltip = "Use"; }; class DropButton: life_RscButtonMenu { idc = 2002; text = "G"; x = 0.345313 * safezoneW + safezoneX; y = 0.7002 * safezoneH + safezoneY; w = 0.0171875 * safezoneW; h = 0.033 * safezoneH; onButtonClick = "[] call life_fnc_giveItem;"; tooltip = "Give"; }; class ButtonAdminMenu_ICON: life_RscPicture { idc = 20210; text = "images\tablet\admin.paa"; x = 0.110417 * safezoneW + safezoneX; y = 0.258 * safezoneH + safezoneY; w = 0.0286458 * safezoneW; h = 0.044 * safezoneH; }; class ButtonAdminMenu: life_RscButtonMenu { idc = 2021; x = 0.110417 * safezoneW + safezoneX; y = 0.258 * safezoneH + safezoneY; w = 0.0286458 * safezoneW; h = 0.044 * safezoneH; onButtonClick = "createDialog ""life_admin_menu""; "; tooltip = $STR_PM_AdminMenu; colorBackground[] = {-1,-1,-1,-1}; colorBackgroundFocused[] = {1,1,1,0.12}; colorBackground2[] = {0.75,0.75,0.75,0.2}; color[] = {1,1,1,1}; colorFocused[] = {0,0,0,1}; color2[] = {0,0,0,1}; colorText[] = {1,1,1,1}; colorDisabled[] = {0,0,0,0.4}; }; class ButtonSettings_ICON: life_RscPicture { idc = -1; text = "images\tablet\config.paa"; x = 0.183751 * safezoneW + safezoneX; y = 0.258 * safezoneH + safezoneY; w = 0.0286458 * safezoneW; h = 0.044 * safezoneH; }; class ButtonSettings: life_RscButtonMenu { idc = -1; x = 0.183751 * safezoneW + safezoneX; y = 0.258 * safezoneH + safezoneY; w = 0.0286458 * safezoneW; h = 0.044 * safezoneH; onButtonClick = "[] call life_fnc_settingsMenu;"; tooltip = "Settings"; colorBackground[] = {-1,-1,-1,-1}; colorBackgroundFocused[] = {1,1,1,0.12}; colorBackground2[] = {0.75,0.75,0.75,0.2}; color[] = {1,1,1,1}; colorFocused[] = {0,0,0,0}; color2[] = {0,0,0,0}; colorText[] = {1,1,1,1}; colorDisabled[] = {1,0,0,0.1}; }; class ButtonKeys_ICON: life_RscPicture { idc = 20111; text = "images\tablet\key.paa"; x = 0.147084 * safezoneW + safezoneX; y = 0.258 * safezoneH + safezoneY; w = 0.0286458 * safezoneW; h = 0.044 * safezoneH; }; class ButtonKeys: life_RscButtonMenu { idc = 2000; x = 0.147084 * safezoneW + safezoneX; y = 0.258 * safezoneH + safezoneY; w = 0.0286458 * safezoneW; h = 0.044 * safezoneH; onButtonClick = "createDialog ""life_key_management"";"; tooltip = "Keys"; colorBackground[] = {-1,-1,-1,-1}; colorBackgroundFocused[] = {1,1,1,0.12}; colorBackground2[] = {0.75,0.75,0.75,0.2}; color[] = {1,1,1,1}; colorFocused[] = {0,0,0,0}; color2[] = {0,0,0,0}; colorText[] = {1,1,1,1}; colorDisabled[] = {1,0,0,0.1}; }; class ButtonCell_ICON: life_RscPicture { idc = 1204; text = "images\tablet\phone.paa"; x = 0.110417 * safezoneW + safezoneX; y = 0.313 * safezoneH + safezoneY; w = 0.0286458 * safezoneW; h = 0.044 * safezoneH; }; class ButtonCell: life_RscButtonMenu { idc = 2001; x = 0.110417 * safezoneW + safezoneX; y = 0.313 * safezoneH + safezoneY; w = 0.0286458 * safezoneW; h = 0.044 * safezoneH; onButtonClick = "createDialog ""Life_cell_phone"";"; tooltip = $STR_PM_CellPhone; colorBackground[] = {-1,-1,-1,-1}; colorBackgroundFocused[] = {1,1,1,0.12}; colorBackground2[] = {0.75,0.75,0.75,0.2}; color[] = {1,1,1,1}; colorFocused[] = {0,0,0,0}; color2[] = {0,0,0,0}; colorText[] = {1,1,1,1}; colorDisabled[] = {1,0,0,0.1}; }; class ButtonSyncData_ICON: life_RscPicture { idc = 1205; text = "images\tablet\sync.paa"; x = 0.182604 * safezoneW + safezoneX; y = 0.313 * safezoneH + safezoneY; w = 0.0286458 * safezoneW; h = 0.044 * safezoneH; }; class ButtonSyncData: life_RscButtonMenu { idc = 2002; x = 0.182604 * safezoneW + safezoneX; y = 0.313 * safezoneH + safezoneY; w = 0.0286458 * safezoneW; h = 0.044 * safezoneH; onButtonClick = "[] call SOCK_fnc_syncData;"; tooltip = $STR_PM_SyncData; colorBackground[] = {-1,-1,-1,-1}; colorBackgroundFocused[] = {1,1,1,0.12}; colorBackground2[] = {0.75,0.75,0.75,0.2}; color[] = {1,1,1,1}; colorFocused[] = {0,0,0,0}; color2[] = {0,0,0,0}; colorText[] = {1,1,1,1}; colorDisabled[] = {1,0,0,0.1}; }; class ButtonGang_ICON: life_RscPicture { idc = 1207; text = "images\tablet\gang.paa"; x = 0.219272 * safezoneW + safezoneX; y = 0.258 * safezoneH + safezoneY; w = 0.0286458 * safezoneW; h = 0.044 * safezoneH; }; class ButtonGang: life_RscButtonMenu { idc = 1209; x = 0.219272 * safezoneW + safezoneX; y = 0.258 * safezoneH + safezoneY; w = 0.0286458 * safezoneW; h = 0.044 * safezoneH; onButtonClick = "if(isNil ""life_action_gangInUse"") then {if(isNil {(group player) getVariable ""gang_owner""}) then {createDialog ""Life_Create_Gang_Diag"";} else {[] spawn life_fnc_gangMenu;};};"; tooltip = "Gang"; colorBackground[] = {-1,-1,-1,-1}; colorBackgroundFocused[] = {1,1,1,0.12}; colorBackground2[] = {0.75,0.75,0.75,0.2}; color[] = {1,1,1,1}; colorFocused[] = {0,0,0,0}; color2[] = {0,0,0,0}; colorText[] = {1,1,1,1}; colorDisabled[] = {1,0,0,0.1}; }; class ButtonWanted_ICON: life_RscPicture { idc = 1210; text = "images\tablet\wanted.paa"; x = 0.147084 * safezoneW + safezoneX; y = 0.313 * safezoneH + safezoneY; w = 0.0286458 * safezoneW; h = 0.044 * safezoneH; }; class ButtonWanted: life_RscButtonMenu { idc = 2008; x = 0.147084 * safezoneW + safezoneX; y = 0.313 * safezoneH + safezoneY; w = 0.0286458 * safezoneW; h = 0.044 * safezoneH; onButtonClick = "[] call life_fnc_wantedMenu"; colorBackground[] = {-1,-1,-1,-1}; colorBackgroundFocused[] = {1,1,1,0.12}; colorBackground2[] = {0.75,0.75,0.75,0.2}; color[] = {1,1,1,1}; colorFocused[] = {0,0,0,0}; color2[] = {0,0,0,0}; colorText[] = {1,1,1,1}; colorDisabled[] = {1,0,0,0.1}; tooltip = $STR_PM_WantedList; }; }; }; Almost done now download these the icon file and put the paa files inside images not the icon folder just the paa files: next up create a folder called tablet inside images and put these icon paa files from the phoneicon.rar folder in there now again oly the paa files in there not the phoneicon folder and youre done: icon.rar phoneicon.rar
  3. 1 point
    Please post and become a little more active, we will review then
  4. 1 point
    The original error message should be in English. What exactly does it say? Can you send a picture of it?
×
×
  • Create New...