Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "..\..\script_macros.hpp"
- /*
- File: fn_houseMenu.sqf
- Author: Bryan "Tonic" Boardwine
- Description:
- Building interaction menu
- */
- #define Btn1 37450
- #define Btn2 37451
- #define Btn3 37452
- #define Btn4 37453
- #define Btn5 37454
- #define Btn6 37455
- #define Btn7 37456
- #define Btn8 37457
- #define Title 37401
- private ["_display","_curTarget","_Btn1","_Btn2","_Btn3","_Btn4","_Btn5","_Btn6","_Btn7","_Btn8"];
- disableSerialization;
- _curTarget = param [0,objNull,[objNull]];
- if (isNull _curTarget) exitWith {}; //Bad target
- _houseCfg = [(typeOf _curTarget)] call life_fnc_houseConfig;
- if (count _houseCfg isEqualTo 0 && playerSide isEqualTo civilian) exitWith {};
- if (!dialog) then {
- createDialog "pInteraction_Menu";
- };
- _Btn1 = CONTROL(37400,Btn1);
- _Btn2 = CONTROL(37400,Btn2);
- _Btn3 = CONTROL(37400,Btn3);
- _Btn4 = CONTROL(37400,Btn4);
- _Btn5 = CONTROL(37400,Btn5);
- _Btn6 = CONTROL(37400,Btn6);
- _Btn7 = CONTROL(37400,Btn7);
- _Btn8 = CONTROL(37400,Btn8);
- {_x ctrlShow false;} forEach [_Btn1,_Btn2,_Btn3,_Btn4,_Btn5,_Btn6,_Btn7,_Btn8];
- life_pInact_curTarget = _curTarget;
- if (_curTarget isKindOf "House_F" && playerSide isEqualTo west) exitWith {
- private _vaultHouse = [[["Altis", "Land_Research_house_V1_F"], ["Malden", "Land_Research_house_V1_F"], ["Tanoa", "Land_Medevac_house_V1_F"]]] call TON_fnc_terrainSort;
- private _altisArray = [16019.5,16952.9,0];
- private _tanoaArray = [11074.2,11501.5,0.00137329];
- private _maldenArray = [133.785,2546.375,2.627];
- private _pos = [[["Altis", _altisArray],["Malden", _maldenArray], ["Tanoa", _tanoaArray]]] call TON_fnc_terrainSort;
- if ((nearestObject [_pos,"Land_Dome_Big_F"]) isEqualTo _curTarget || (nearestObject [_pos,_vaultHouse]) isEqualTo _curTarget) then {
- _Btn1 ctrlSetText localize "STR_pInAct_Repair";
- _Btn1 buttonSetAction "[life_pInact_curTarget] spawn life_fnc_repairDoor; closeDialog 0;";
- _Btn1 ctrlShow true;
- _Btn2 ctrlSetText localize "STR_pInAct_CloseOpen";
- _Btn2 buttonSetAction "[life_pInact_curTarget] call life_fnc_doorAnimate; closeDialog 0;";
- _Btn2 ctrlShow true;
- } else {
- if (!isNil {_curTarget getVariable "house_owner"}) then {
- _Btn1 ctrlSetText localize "STR_House_Raid_Owner";
- _Btn1 buttonSetAction "[life_pInact_curTarget] call life_fnc_copHouseOwner;";
- _Btn1 ctrlShow true;
- _Btn2 ctrlSetText localize "STR_pInAct_BreakDown";
- _Btn2 buttonSetAction "[life_pInact_curTarget] spawn life_fnc_copBreakDoor; closeDialog 0;";
- _Btn2 ctrlShow true;
- _Btn3 ctrlSetText localize "STR_pInAct_SearchHouse";
- _Btn3 buttonSetAction "[life_pInact_curTarget] spawn life_fnc_raidHouse; closeDialog 0;";
- _Btn3 ctrlShow true;
- if (player distance _curTarget > 3.6) then {
- _Btn3 ctrlEnable false;
- };
- _Btn4 ctrlSetText localize "STR_pInAct_LockHouse";
- _Btn4 buttonSetAction "[life_pInact_curTarget] spawn life_fnc_lockupHouse; closeDialog 0;";
- _Btn4 ctrlShow true;
- } else {
- closeDialog 0;
- };
- };
- };
- if (!(_curTarget in life_vehicles) || isNil {_curTarget getVariable "house_owner"}) then {
- private _isHouse = false;
- if (isClass (missionConfigFile >> "Housing" >> worldName >> (typeOf _curTarget))) then {
- _Btn1 ctrlSetText localize "STR_pInAct_BuyHouse";
- _Btn1 buttonSetAction "[life_pInact_curTarget] spawn life_fnc_buyHouse;";
- _isHouse = true;
- } else {
- _Btn1 ctrlSetText localize "STR_pInAct_BuyGarage";
- _Btn1 buttonSetAction "[life_pInact_curTarget] spawn life_fnc_buyHouse;";
- };
- _Btn1 ctrlShow true;
- if (!isNil {_curTarget getVariable "house_owner"}) then {
- _Btn1 ctrlEnable false;
- } else {
- _Btn8 ctrlSetText localize "STR_trade_sell_object";
- _Btn8 buttonSetAction "[life_pInact_curTarget] call life_fnc_initSellObject";
- _Btn8 ctrlShow true;
- };
- if (_isHouse) then {
- if (getNumber (missionConfigFile >> "Housing" >> worldName >> (typeOf _curTarget) >> "canGarage") isEqualTo 1) then {
- _Btn2 ctrlSetText localize "STR_pInAct_GarageExt";
- _Btn2 buttonSetAction 'hint format [localize "STR_pInAct_GarageExtNOTF",[LIFE_SETTINGS(getNumber,"houseGarage_buyPrice")] call life_fnc_numberText];';
- _Btn2 ctrlShow true;
- };
- };
- } else {
- if (isClass (missionConfigFile >> "Garages" >> worldName >> (typeOf _curTarget))) then {
- _Btn1 ctrlSetText localize "STR_pInAct_SellGarage";
- _Btn1 buttonSetAction "[life_pInact_curTarget] spawn life_fnc_sellHouse; closeDialog 0;";
- _Btn1 ctrlShow true;
- if (((_curTarget getVariable "house_owner") select 0) != getPlayerUID player) then {
- _Btn1 ctrlEnable false;
- } else {
- _Btn8 ctrlSetText localize "STR_trade_sell_object";
- _Btn8 buttonSetAction "[life_pInact_curTarget] call life_fnc_initSellObject";
- _Btn8 ctrlShow true;
- };
- _Btn2 ctrlSetText localize "STR_pInAct_AccessGarage";
- _Btn2 buttonSetAction "[life_pInact_curTarget,""Car""] spawn life_fnc_vehicleGarage; closeDialog 0;";
- _Btn2 ctrlShow true;
- _Btn3 ctrlSetText localize "STR_pInAct_StoreVeh";
- _Btn3 buttonSetAction "[life_pInact_curTarget,player] spawn life_fnc_storeVehicle; closeDialog 0;";
- _Btn3 ctrlShow true;
- } else {
- _Btn1 ctrlSetText localize "STR_pInAct_SellHouse";
- _Btn1 buttonSetAction "[life_pInact_curTarget] spawn life_fnc_sellHouse; closeDialog 0;";
- _Btn1 ctrlShow true;
- if (((_curTarget getVariable "house_owner") select 0) != getPlayerUID player) then {
- _Btn1 ctrlEnable false;
- } else {
- _Btn8 ctrlSetText localize "STR_trade_sell_object";
- _Btn8 buttonSetAction "[life_pInact_curTarget] call life_fnc_initSellObject";
- _Btn8 ctrlShow true;
- };
- if (_curTarget getVariable ["locked",false]) then {
- _Btn2 ctrlSetText localize "STR_pInAct_UnlockStorage";
- } else {
- _Btn2 ctrlSetText localize "STR_pInAct_LockStorage";
- };
- _Btn2 buttonSetAction "[life_pInact_curTarget] call life_fnc_lockHouse; closeDialog 0;";
- _Btn2 ctrlShow true;
- if (isNull (_curTarget getVariable ["lightSource",objNull])) then {
- _Btn3 ctrlSetText localize "STR_pInAct_LightsOn";
- } else {
- _Btn3 ctrlSetText localize "STR_pInAct_LightsOff";
- };
- _Btn3 buttonSetAction "[life_pInact_curTarget] call life_fnc_lightHouseAction; closeDialog 0;";
- _Btn3 ctrlShow true;
- if (_curTarget getVariable ["alarme",true] || license_civ_AssuranceMaison) then { // Código adicionado
- _Btn4 ctrlSetText "Éteindre l'alarme";
- _Btn4 buttonSetAction "life_pInact_curTarget setVariable ['alarme',false,true]; closeDialog 0;";
- _Btn4 ctrlshow true;
- } else {
- _Btn4 ctrlSetText "Activer l'alarme";
- _Btn4 buttonSetAction "life_pInact_curTarget setVariable ['alarme',true,true]; closeDialog 0;";
- _Btn4 ctrlshow true;
- };
- if (getNumber (missionConfigFile >> "Housing" >> worldName >> (typeOf _curTarget) >> "canGarage") isEqualTo 1 && {!(_curTarget getVariable ["blacklistedGarage",false])}) then {
- if (_curTarget getVariable ["garageBought",false]) then {
- _Btn4 ctrlSetText localize "STR_pInAct_SellGarage";
- _Btn4 buttonSetAction "[life_pInact_curTarget] spawn life_fnc_sellHouseGarage; closeDialog 0;";
- _Btn4 ctrlShow true;
- if (((_curTarget getVariable "house_owner") select 0) != (getPlayerUID player)) then {
- _Btn4 ctrlEnable false;
- };
- _Btn5 ctrlSetText localize "STR_pInAct_AccessGarage";
- _Btn5 buttonSetAction "[life_pInact_curTarget,""Car""] spawn life_fnc_vehicleGarage; closeDialog 0;";
- _Btn5 ctrlShow true;
- _Btn6 ctrlSetText localize "STR_pInAct_StoreVeh";
- _Btn6 buttonSetAction "[life_pInact_curTarget,player] spawn life_fnc_storeVehicle; closeDialog 0;";
- _Btn6 ctrlShow true;
- } else {
- _Btn5 ctrlSetText localize "STR_pInAct_BuyGarage";
- _Btn5 buttonSetAction "[life_pInact_curTarget] spawn life_fnc_buyHouseGarage; closeDialog 0;";
- };
- _Btn5 ctrlShow true;
- };
- };
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement