Welcome to Altis Life RPG

Register now to gain access to all of our features.
Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more.


Note that you can now sign-in with your Steam account.


This message will be removed once you have signed in.

  • Announcements

    • Rozo

      Donations   09/18/2016

      Hello,
        We've added a donation block on the right side. All of those donation goes directly to the developer of Altis Life mod ( currently BoGuu ). None of that money is used to maintain the forum. In the future we might add a donation button to support the forum, but for now we want to encourage the developer because they went through a lot. To discuss this topic - Here
    • Shakir Darwish

      IS YOUR SERVER BROKEN SINCE 1.64 UPDATE?   09/22/2016

      If your server is broken since 1.64 go check this link thanks. https://github.com/AsYetUntitled/Framework/issues/104
    • Rozo

      Sad Day   01/04/2017

      Good evening community of Altis Life RPG, Today was a sad day. We learned the hard way that one of the helper was using his status and visibility on the forum to do things i wouldn't imagine.  We were warned about this user in the beginning, we talked about his behavior and he said that they were things of the past. We were fooled.
      Unfortunately, he fooled other community members by selling stolen content and impersonating his role as a developer in another community. Here's a remember of one of the rules on our forum, No selling scripts, snippets, or services.   So if anyone come across someone who's selling his services, scripts or whatever, Report them. Especially if it's coming from an Helper, Mod, Admin. No one in the staff should ask for money, we already mention this when we reopened the forum and that rule is here to stay.

      We can't be sorry enough for what happen here, for any harm it as caused among other communities, for money that shouldn't been spent and we truly hope this doesn't happen again.

      As for the user in question, he is now banned from our forum and discord and we wish to never cross his path again.
        If there's anything we can do hit us on Discord or send a message to an admin.
      Thanks, Rozo.

Leaderboard


Popular Content

Showing most liked content since 08/24/2017 in all areas

  1. 4 points
    This tutorial was written using the default dp missions of the Framework. This version works on 5.0, but it would work on any version of the framework. This tutorial is about creating delivery truck missions, instead of packages. You can add both, just create a new file with the same file structure of the edited file. I was asked to make it so the player receives keys, but cant store it etc. First things first. Goto the editor, and place an empty marker down where your "Get Delivery Mission" NPC is. Make sure its not to close else the vehicle may spawn, and kill the player. Call the marker >> truck_mission_spawn1 (I names mine this as I have multiple. Save the mission, and lets start adding the code structure. Open the file: core/actions/fn_getDPMission.sqf In the private var, add private ["_marker","_trucksArr","_dir","_vehMark"]; (If you do not wish to enable vehicle markers locally for the player getting the mission. Do not add _vehMark. Underneath _target = param, add the following _trucksArr = [ "B_Truck_01_mover_F", "B_G_Van_01_transport_F", "B_T_Truck_01_covered_F", "B_Truck_01_fuel_F", "O_Truck_02_transport_F", "O_Truck_02_box_F", "O_Truck_03_covered_F", "O_T_Truck_03_repair_ghex_F" ]; Change the class names to the trucks you wish to use. Head over to Bohemia's website and find your own if you want to change them, or add more... Underneath that, add the following _marker = getMarkerPos "truck_mission_spawn1"; _dir = markerDir "truck_mission_spawn1"; Underneath } else { _dp = LIFE_SETTINGS .. add the following. hint "You have received keys for this vehicle, but you cannot store the vehicle. \n\nAny attempt to do so, will automatically be reported to the admins."; dpTruck = (_trucksArr call BIS_fnc_selectRandom) createVehicle _marker; dpTruck setDir _dir; dpTruck setPos _marker; dpTruck setVectorUp (surfaceNormal _marker); dpTruck disableTIEquipment true; life_vehicles pushBack dpTruck; Now lets make it so cops cant impound it, you cannot chop it, and lets also create the vehicle markers (incase you have lost the truck some how.) Underneath the above, add the following. (This sets the vehicles var so it can't be impounded etc, we're also going to give the player some keys for the vehicle.) dpTruck setVariable["NPC",true]; [getPlayerUID player,playerSide,dpTruck,1] remoteExecCall ["TON_fnc_keyManagement",2]; And now we clear the vehicles inventorys, just incase Arma adds shit to them. clearWeaponCargoGlobal dpTruck; clearMagazineCargoGlobal dpTruck; clearItemCargoGlobal dpTruck; clearBackpackCargoGlobal dpTruck; Now underneath that, if you want to enable players to choose weather or not they want vehicle markers. Add the following. _result = ["Would you like to turn on Vehicle Marker for this vehicle?", "Truck Mission Markers", "Yes", "No"] call BIS_fnc_guiMessage; if(_result) then { _vehMark = createMarkerLocal ["dTruckMark",dpTruck]; _vehMark setMarkerColorLocal "ColorGreen"; _vehMark setMarkerTypeLocal "mil_dot"; _vehMark setMarkerTextLocal "Delivery Truck Location"; _vehMark setMarkerAlphaLocal 0.95; }; Now, we need to be able to check weather or not the player has blown up the vehicle, or destroyed it somehow. So go down to line (roughly 90) and add the following [] spawn { waitUntil {!life_delivery_in_progress || !canMove dpTruck}; if (!canMove dpTruck) then { life_cur_task setTaskState "Failed"; player removeSimpleTask life_cur_task; ["DeliveryFailed", ["The truck was destoryed! Mission failed!"]] call BIS_fnc_showNotification; //Localize it if you want. life_delivery_in_progress = false; life_dp_point = nil; }; }; And directly underneath that, add the while true do so the marker is persistent with the vehicle (when it moves, the marker moves also) while { true } do { "dTruckMark" setMarkerPosLocal (getPos dpTruck); sleep 1; }; Now save that file, and open up core/actions/fn_dpFinish.sqf Add these two lines, above CASH = CASH ... deleteVehicle dpTruck; deleteMarkerLocal "dTruckMark"; If you dont want players to be able to chop the vehicle, save the above file, and open up core/shops/fn_chopShopSell.sqf add the following right underneath if(isNull _vehicle) if (_vehicle isEqualTo dpTruck) exitWith {titleText["You are not allowed to chop this vehicle.","PLAIN"]; The Variable we set to the dpTruck is called via a lot of other scripts, such as the impoundAction. So we are just setting a variable to the dpTruck that has already been created. Basically, it doesn't let cops impound it because its variable is NPC. I think that's all the editing that needs to be done. Be sure to change the stringtable text from "deliver this package" to "deliver this truck".. or you can leave it, up to you. If you have any issues, hmu. Ill try and help providing you followed this thread properly, you should have no issues.
  2. 3 points
    I am sorry , Not trying to be rude however You based your work on the existing framework which means it has been edited like any other script modified for server owner preference. With that logic Most Good servers with nice scripts would mean that they are "Custom Framework". Just my 0.02$
  3. 3 points
    Alpha Omega Gaming is looking for players, EMS, and Police. We got a great community. At Alpha Omega Gamiing, our primary objective is to provide you with outstanding role-play, an active community, and plenty of fun things to do. From our custom scripts to our top notch graphics/map designs, we create a sense of immersion unlike any other Life server out there. Always ready to assist, our mature server staff are hand picked from thousands of players to establish our server vision within the community. If you are ready for a real Arma Life experience, look no further; you are home. Server IP: 23.229.5.178 Port: 2302 Website: http://www.alphaomegagamingnetwork.com TeamSpeak: http://alphaomegagaming.typefrag.com We look forward to seeing you!
  4. 3 points
    I've spent a few weeks on this server and it's awesome. For an unmodded server it has so much custom stuff. Towing, rappelling, animations... I love this place and I think it will be my home server. The community is small but I see it grow every day. I'd love to see even more people on. I definitely recommend this server if you're looking for roleplay and a tight community.
  5. 2 points
  6. 2 points
    RELIC QUESTING SYSTEM [Complete] You may attempt to install this, let me know if it works. Disclaimer: I have been given permission to release my work of the questing system added into maverick apps modular talent tree Requirements: Have a valid purchased copy of maverick apps modular talent tree What this does: Adds a questing system to your talent tree, giving experience per quest completion and.. - Stage 1: Find the 4 relics hidden around the map, bring them to an NPC for a reward [unlocks quest 2] - Stage 2: Rob the gold convoy (another maverick apps script) to receive the next relic and bring it to the NPC [unlocks quest 3] - Stage 3: Rob the federal reserve to receive the last relic, allowing you to collect a expensive virtual item from a new zone I've added in. Features: - Cannot trade relics to other players - Anti market trading of relics - Removal of the relics on player death to stop transfer of the virtual items - (optional) Complete rework of the federal reserve system to simply give money + virtual items, experience, etc. ___________________________________________________________________________________________________________________________________________________________________________________ TUTORIAL ___________________________________________________________________________________________________________________________________________________________________________________ Mission.SQM: 1. Place this into 4 separate objects on your map that you place, I used statues: this addAction["Collect Relic",life_fnc_relic1,"",0,false,false,"",'playerSide == civilian && vehicle player == player && player distance _target < 4']; Replace 'life_fnc_relic1' with relic1 -> relic4 for each 2. Place this into an NPC, it will be your relic dealer, your players must trade the relics to him for rewards: this addAction["Trade in your relics for the reward",life_fnc_relicReward,"",0,false,false,"",'playerSide == civilian && vehicle player == player && player distance _target < 4']; this addAction["Trade in your transport relic",life_fnc_relicRewardTransport,"",0,false,false,"",'playerSide == civilian && vehicle player == player && player distance _target < 4']; this addAction["Trade in your federal reserve relic",life_fnc_relicRewardFed,"",0,false,false,"",'playerSide == civilian && vehicle player == player && player distance _target < 4']; this addAction[localize"STR_Shops_Archeologist",life_fnc_virt_menu,"archeologist"]; Functions: 1. Download Quests.rar 2. Place it in your core folder 3. Open functions.h, place this block somewhere in life_client_core class Quests { file = "core\quests\Relics"; class relic1 {}; class relic2 {}; class relic3 {}; class relic4 {}; class relicReward {}; class relicRewardTransport {}; class relicRewardFed {}; }; Virtual Items: 1. Download the icons.rar 2. place them in your icons folder (make sure the virtual items code listed below calls to right location)' 3. Open Config_Vitems and place these in class VirtualItems: //relics class relic1 { variable = "relic1"; displayName = "STR_Item_relic1"; weight = 3; buyPrice = -1; sellPrice = -1; illegal = false; edible = -1; icon = "images\icons\ico_relic1.paa"; }; class relic2 { variable = "relic2"; displayName = "STR_Item_relic2"; weight = 3; buyPrice = -1; sellPrice = -1; illegal = false; edible = -1; icon = "images\icons\ico_relic2.paa"; }; class relic3 { variable = "relic3"; displayName = "STR_Item_relic3"; weight = 3; buyPrice = -1; sellPrice = -1; illegal = false; edible = -1; icon = "images\icons\ico_relic3.paa"; }; class relic4 { variable = "relic4"; displayName = "STR_Item_relic4"; weight = 3; buyPrice = -1; sellPrice = -1; illegal = false; edible = -1; icon = "images\icons\ico_relic4.paa"; }; //relicTransport class relicTransport { variable = "relicTransport"; displayName = "STR_Item_relicTransport"; weight = 3; buyPrice = -1; sellPrice = -1; illegal = true; edible = -1; icon = "images\icons\ico_relicTransport.paa"; }; //RelicFed class relicFed { variable = "relicFed"; displayName = "STR_Item_relicFed"; weight = 3; buyPrice = -1; sellPrice = -1; illegal = true; edible = -1; icon = "images\icons\ico_relicFed.paa"; }; //relic end 4. Somewhere at the end of your federal reserve robbery reward file, place this so the player gains the relic upon completion [true,"relicFed",1] call life_fnc_handleInv; or make it so it appears in the box, but i recommend the first option 5. In configuration.sqf, place these below life_civGang = grpNull; mav_ttm_var_relicReward = 0; mav_ttm_var_relicReward2 = 0; mav_ttm_var_relicReward3 = 0; 6. Open fn_dropItems, place these in the switch (_item) do array: //nodrop case "relic1": { if (_value > 0) then { missionNamespace setVariable [_itemName,0]; }; }; case "relic2": { if (_value > 0) then { missionNamespace setVariable [_itemName,0]; }; }; case "relic3": { if (_value > 0) then { missionNamespace setVariable [_itemName,0]; }; }; case "relic4": { if (_value > 0) then { missionNamespace setVariable [_itemName,0]; }; }; case "relicTransport": { if (_value > 0) then { missionNamespace setVariable [_itemName,0]; }; }; case "relicFed": { if (_value > 0) then { missionNamespace setVariable [_itemName,0]; }; }; 7. Open fn_giveItem.sqf, place this under: if (isNull _unit) exitWith {ctrlShow[2002,true];}; if (_item == "relic1" || _item == "relic2" || _item == "relic3" || _item == "relic4" || _item == "relicTransport" || _item == "relicFed") exitWith { hint "You cannot trade these items"}; 8. open fn_ vehStoreItem, place this underneath: if (_ctrl == "goldbar" && {!(life_trunk_vehicle isKindOf "LandVehicle")}) //Relic if (_ctrl == "relic1" || _ctrl == "relic2" || _ctrl == "relic3" || _ctrl == "relic4" || _ctrl == "relicTransport" || _ctrl == "planeTreasure" || _ctrl == "excavator") exitWith {hint "you cannot store this item"}; 9. Optional if you have the virtual auction house script, if you do, open fn_vAH_sell.sqf and place this under: (_bad) exitWith {closeDialog 0;}; if (_classname == "relic1" || _classname == "relic2" || _classname == "relic3" || _classname == "relic4" || _classname == "relicTransport" || _classname == "relicFed" || _classname == "excavator" || _classname == "planeTreasure") exitWith {hint "You cannot sell these items"}; 10. For your relic transport, you can change how you obtain it if you don't have the script, but i placed this unto the virtual loot: {"relicTransport", 2}, 11. Open stringtable.xml, place these into it somewhere: <Key ID="STR_Item_relic1"> <Original>Takhi Relic</Original> </Key> <Key ID="STR_Item_relic2"> <Original>Arkhan Relic</Original> </Key> <Key ID="STR_Item_relic3"> <Original>Shakrhi Relic</Original> </Key> <Key ID="STR_Item_relic4"> <Original>Lewni Relic</Original> </Key> <Key ID="STR_Item_relicTransport"> <Original>Prized Relic</Original> </Key> <Key ID="STR_Item_relicFed"> <Original>Federal Reserve Relic</Original> </Key> Maverick addition: 1. Open actions.cpp inside maverick_perkset_1 folder, place these near the bottom, you can edit the values obviously: class relic { expToAdd = 1375; message = "Relic Quest Complete!"; }; class relic2 { expToAdd = 1900; message = "Relic Quest 2 Complete!"; }; class relic3 { expToAdd = 2300; message = "Relic Quest 3 Complete!"; }; 2. Download the relicreward.rar file, place all the files inside \maverick\talent-tree-modular\modules\maverick_perkset_1\functions folder 3. Open the perks.cpp file inside the maverick_perkset_1 folder, add these at the bottom: class functions_relicReward { displayName = "Quest: Collecting Relics"; requiredPerkPoints = 9999; requiredLevel = 1; requiredPerk = ""; subtitle = "Collecting Hidden Relics"; description = "Bring all the hidden relics around the map (4) to the archeologist <br/><br/><t color='#10FF45'>Reward: 1375 xp</t>"; initScript = "maverick\talent-tree-modular\modules\maverick_perkset_1\functions\functions_relicReward.sqf"; limitToSides[] = {}; color[] = {0,0.46,0.76,1}; }; class functions_relicReward2 { displayName = "Quest: Collecting Relics 2"; requiredPerkPoints = 9999; requiredLevel = 1; requiredPerk = "functions_relicReward"; subtitle = "Gold Transport Relic"; description = "Intercept the gold transport and gather the relic inside the main transport vehicle, bring it to the archeologist <br/><br/><t color='#10FF45'>Reward: 1900 xp</t>"; initScript = "maverick\talent-tree-modular\modules\maverick_perkset_1\functions\functions_relicReward2.sqf"; limitToSides[] = {}; color[] = {0,0.46,0.76,1}; }; class functions_relicReward3 { displayName = "Quest: Collecting Relics 3"; requiredPerkPoints = 9999; requiredLevel = 1; requiredPerk = "functions_relicReward2"; subtitle = "Federal Reserve Relic"; description = "Rob the federal reserve, gather the relic from the reward and bring it to the archeologist <br/><br/><t color='#10FF45'>Reward: 2300 xp and the ability to loot oil rig cargo</t>"; initScript = "maverick\talent-tree-modular\modules\maverick_perkset_1\functions\functions_relicReward3.sqf"; limitToSides[] = {}; color[] = {0,0.46,0.76,1}; }; quests.rar relicreward.rar icons.rar
  7. 2 points
    SIMPLE MORPHINE AND BANDAGES [Complete] You may attempt to install this, let me know if it works. Basically, this adds two new items: morphine and bandages, they heal over time instead of instantly, I removed all other sources of healing from my server to make it more realistic. ___________________________________________________________________________________________________________________________________________________________________________________ TUTORIAL ___________________________________________________________________________________________________________________________________________________________________________________ 1. Download the attached icons.rar file 2. place them in your icons folder (make sure the virtual items code listed below calls to right location) 3. open config_vitems.sqf and place these in the class VirtualShops array: class morphine { variable = "morphine"; displayName = "STR_Item_Morphine"; weight = 2; buyPrice = 1500; sellPrice = 300; illegal = true; edible = -1; icon = "images\icons\Morphine.paa"; }; class bandages { variable = "bandages"; displayName = "STR_Item_Bandages"; weight = 2; buyPrice = 200; sellPrice = 50; illegal = false; edible = -1; icon = "images\icons\ico_bandages.paa"; }; 4. Add 'morphine' and 'bandages' to whatever shops you want near the top of the file 5. Open stringtable.xml and add these: <Key ID="STR_Item_Morphine"> <Original>Morphine Syrette</Original> </Key> <Key ID="STR_Item_Bandages"> <Original>Bandages</Original> </Key> 6. Open the useitem.sqf file, add these: case (_item isEqualTo "morphine"): { [] spawn life_fnc_morphine; }; case (_item isEqualTo "bandages"): { [] spawn life_fnc_bandages; }; 7. (optional) If you want these items to save over restart/relog add them to the save_vehicle_items[] array in your config_master.hpp file 8. Download the scripts.rar file at the bottom, place the files inside into your core/items folder 9. Go into functions.h folder, add these into the core\items array: class bandages {}; class morphine {}; icons.rar scripts.rar
  8. 2 points
    When will you people learn to stop quoting 50 line posts to ask irrelevant questions?
  9. 2 points
    Why don't you do it yourself?
  10. 2 points
    Thats fine, I appreciate it! When people can show they have attempted to fix broken things instead of just taking something and copying it. I understand a lot of people don't know these things, but Bohemia made a wiki for a reason. The amount of PM's I've received with this specific release, and the Truck Mission, is outragous. Something that was posted in plain english, and more than understandable to read but yet fail to get it working because they don't know what they are doing. It gets annoying, and frustraiting. I already had fixed it in a newer version as I mentioned, not exactly the same way but similar. So you improved it for someone else, which again I thank you for.
  11. 2 points
    The life servers have been pretty shitty fro what I seen. ran a life server for a year. it was really shitty due to the players and staff members on it. People now a days do not like to play the same way as others so you have trolls that are gonna join. I have given up on arma 3 completely its not as interesting as it was when I first purchased the game. I am waiting on them to release a new version of arma. the arma community is gonna die quick unless something new is released do to people getting bored of the same game. I have 4k close to 5k hours on arma 3, and now I rarely play the game. If I open the game its cause I created a new texture and i want to see how it looks ingame.
  12. 2 points
    Just be carefull with this since you make a hole for scripters to make database changes
  13. 2 points
    Looking at the way you have asked for help on some simple coding, I would say you probably really didn't remake anything, you more than likely paid someone to fix it. I more than likely know why he didn't paste it, due to it being another community code.
  14. 2 points
    I am editing the files accordingly. Ill repost for you once its done.
  15. 2 points
    Tell us about yourself: About me, well. My name's not actually David, for obvious reasons. I'm 16 years old, I live in Melbourne, Australia and have a keen interest in software development. I have +3000 hours in ArmA 3, most of which have been spent testing and developing 'Life' Servers. I have started many communities over my time, most of which didn't take off but some did. I have firm views on certain issues regarding ArmA 3 servers and to be honest, I believe that people should have a go at things before they ask for help. Otherwise what's the point of starting a community if all you are going to do is solely rely on the people who release they work over here. What's your experience with SQF and SQL languages, or other sorts of Arma related development? Most of my knowledge stems from PHP and HTML (CSS, LESS, etc.), This is what helped me grasp and understanding of SQF. I'm really confident with SQL, I could just about recite any query you want off the top of my head. On my profile I state that learning PHP played a key role in learning to understand SQF syntax. Now, I'm not saying I'm great at SQF, but I know my way around it. I have extensive knowledge in the making of GUIs. In fact I posted one of my works in the 4.x script area - link. As i stated before I'm doing a software development course as a year 12 subject, I am sitting on a 91.5% as an overall grade, so i can't be that bad.. can I? Why do you want to be a Helper? I enjoy helping people overcome issues. Whether this be ArmA issues or other things such as websites. I find that my stills would be going to waste if i didn't use them or even share them with others. Becoming a helper/moderator has also been a 'low key' goal for me. I can see the this community returning to its former days, it just needs some help to get there, and I'm prepared to help. What can you bring to the community? I'm a great leader and am able to communicate one on one and in teams. I have some ideas for things that we could implement into the community, more information on that at a later date. Keeping this a 'safe place' (I'm not a raging feminist don't worry) is a priority for me as well, I won't stand for bullying or racism, etc. I believe helping people is one thing but helping them become better is another, in that helping people fix an issue is one thing but helping people learn how to fix it themselves is even better. "Give a man a fish and you feed him for a day; teach a man to fish and you'll feed him for a lifetime." . Here's one of my rants - link. If you were to become a helper, would a moderator position be appealing to you as well in the future? Yes, most definitely. Being a moderator on this forum has been a goal for me ever since the site came back up.
  16. 1 point
    Author Name: Neil Smith / Deadlesszombie Difficulty: Easy Purpose of Script: Upon being jailed, the old loadout of the player is saved, then all items are removed from the player, and the jail uniform is assigned. If the player escapes jail, their gear is not returned, if they pay bail or do their full time, they recieve their clothing back! Note, This is Untested YOU WILL ALSO NEED YOUR OWN CLOTHES, "player addUniform "PUT YOUR UNIFORM FOR JAIL HERE!!!!!";" Go to MissionFile\core\civillian\fn_jailMe.sqf add this right under while {true} do { if((round(_time - time)) > 0) then { _countDown = if(round (_time - time) > 60) then {format["%1 Minute(s)",round(round(_time - time) / 60)]} else {format["%1 Second(s)",round(_time - time)]}; if(isNil "life_canpay_bail") then { hintSilent format["Time Remaining:\n %1\n\nCan pay Bail: %3\nBail Amount: $%2",_countDown,[life_bail_amount] call life_fnc_numberText, "dass"]; } else { hintSilent format["Time Remaining:\n %1\n",_countDown]; }; }; if(player distance (getMarkerPos "jail_marker") > 300) exitWith { _esc = true; }; if(life_bail_paid) exitWith { _bail = true; }; if((round(_time - time)) < 1) exitWith {hint ""}; if(!alive player && ((round(_time - time)) > 0)) exitWith {}; sleep 1; }; put this under it: make sure you replace "player addUniform "PUT YOUR UNIFORM FOR JAIL HERE!!!!!";" //Begin jail uniform hint "Your gear has been placed in the evidence locker!"; old_gear = getUnitLoadout player; removeUniform player; removeHeadgear player; removeVest player; removeGoggles player; removeBackpack player; removeallWeapons player; removeallAssignedItems player; player addUniform "PUT YOUR UNIFORM FOR JAIL HERE!!!!!"; you should now have this: while {true} do { if((round(_time - time)) > 0) then { _countDown = if(round (_time - time) > 60) then {format["%1 Minute(s)",round(round(_time - time) / 60)]} else {format["%1 Second(s)",round(_time - time)]}; if(isNil "life_canpay_bail") then { hintSilent format["Time Remaining:\n %1\n\nCan pay Bail: %3\nBail Amount: $%2",_countDown,[life_bail_amount] call life_fnc_numberText, "dass"]; } else { hintSilent format["Time Remaining:\n %1\n",_countDown]; }; }; if(player distance (getMarkerPos "jail_marker") > 300) exitWith { _esc = true; }; if(life_bail_paid) exitWith { _bail = true; }; if((round(_time - time)) < 1) exitWith {hint ""}; if(!alive player && ((round(_time - time)) > 0)) exitWith {}; sleep 1; }; //Begin jail uniform hint "Your gear has been placed in the evidence locker!"; old_gear = getUnitLoadout player; removeUniform player; removeHeadgear player; removeVest player; removeGoggles player; removeBackpack player; removeallWeapons player; removeallAssignedItems player; player addUniform "PUT YOUR UNIFORM FOR JAIL HERE!!!!!"; Now scroll down and add this for each case function, depending on if you want the players to get their gear on what case (Note: case _bail means they paid the bail and they are now free, case _esc means they escaped prison, and case !_esc && !_bail means they did their full time in prison) player setUnitLoadout old_gear; hint "Because you have done your time in prison, you will recieve your clothing shortly"; [] call life_fnc_saveGear; An example of what you should have depending on how you want it: switch (true) do { case (_bail): { life_is_arrested = false; life_bail_paid = false; hint localize "STR_Jail_Paid"; serv_wanted_remove = [player]; player setPos (getMarkerPos "civ_spawn_1"); [getPlayerUID player] remoteExecCall ["life_fnc_wantedRemove",RSERV]; hint "Because you have paid your bail, you will recieve your clothing shortly"; player setUnitLoadout old_gear; [] call life_fnc_saveGear; [5] call SOCK_fnc_updatePartial; }; case (_esc): { life_is_arrested = false; hint localize "STR_Jail_EscapeSelf"; [0,"STR_Jail_EscapeNOTF",true,[profileName]] remoteExecCall ["life_fnc_broadcast",RCLIENT]; [getPlayerUID player,profileName,"901"] remoteExecCall ["life_fnc_wantedAdd",RSERV]; hint "Because you escaped from jail, the jail guards have placed your gear in the trash"; [] call life_fnc_saveGear; [5] call SOCK_fnc_updatePartial; }; case (alive player && !_esc && !_bail): { life_is_arrested = false; hint localize "STR_Jail_Released"; [getPlayerUID player] remoteExecCall ["life_fnc_wantedRemove",RSERV]; player setPos (getMarkerPos "civ_spawn_1"); player setUnitLoadout old_gear; hint "Because you have done your time in prison, you will recieve your clothing shortly"; [] call life_fnc_saveGear; [5] call SOCK_fnc_updatePartial; }; }; Example full script if you are completely lost Ciao
  17. 1 point
    Author: David (Yes its custom, omg no way m8) Just something I have been slaving away on for the past 3 hours TUTORIAL -------------------------------Removing The Default HUD-------------------- Step 0.1: Go into your description.ext and comment out: #include "dialog\hud_stats.hpp" to make it: //#include "dialog\hud_stats.hpp" or /*#include "dialog\hud_stats.hpp"*/ step 0.3453: go into "core\functions\fn_hudSetup.sqf" and comment out #include "..\..\script_macros.hpp" /* File: fn_hudSetup.sqf Author: Bryan "Tonic" Boardwine Description: Setups the hud for the player? */ disableSerialization; cutRsc ["playerHUD", "PLAIN", 2, false]; [] call life_fnc_hudUpdate; [] spawn { private["_dam"]; for "_i" from 0 to 1 step 0 do { _dam = damage player; waitUntil {(damage player) != _dam}; [] call life_fnc_hudUpdate; }; }; To make it look like: #include "..\..\script_macros.hpp" /* File: fn_hudSetup.sqf Author: Bryan "Tonic" Boardwine Description: Setups the hud for the player? */ /* disableSerialization; cutRsc ["playerHUD", "PLAIN", 2, false]; [] call life_fnc_hudUpdate; [] spawn { private["_dam"]; for "_i" from 0 to 1 step 0 do { _dam = damage player; waitUntil {(damage player) != _dam}; [] call life_fnc_hudUpdate; }; }; */ Step 0.99: go into "core\functions\fn_hudUpdate.sqf" and comment out: #include "..\..\script_macros.hpp" /* File: fn_hudUpdate.sqf Author: Daniel Stuart Description: Updates the HUD when it needs to. */ disableSerialization; if (isNull LIFEdisplay) then {[] call life_fnc_hudSetup;}; LIFEctrl(2200) progressSetPosition (life_hunger / 100); LIFEctrl(2201) progressSetPosition (1 - (damage player)); LIFEctrl(2202) progressSetPosition (life_thirst / 100); To make it look like: #include "..\..\script_macros.hpp" /* File: fn_hudUpdate.sqf Author: Daniel Stuart Description: Updates the HUD when it needs to. */ /* disableSerialization; if (isNull LIFEdisplay) then {[] call life_fnc_hudSetup;}; LIFEctrl(2200) progressSetPosition (life_hunger / 100); LIFEctrl(2201) progressSetPosition (1 - (damage player)); LIFEctrl(2202) progressSetPosition (life_thirst / 100); */ ---------------------------------Installing My HUD--------------------------------- Step 1: Go into your "Dialog" folder and make a file called custHud.hpp and place the following inside: #include "common.hpp" class custHUD { idd = 1000000; movingEnable = 0; enableSimulation = 1; enableDisplay = 1; duration = 99999; fadein = 0.1; fadeout = 0.1; name = "custHUD"; onLoad = "with uiNameSpace do { custHUD = _this select 0 }"; class controls { class bg: Life_RscText { idc = 1000; x = 0.340156 * safezoneW + safezoneX; y = 0.929 * safezoneH + safezoneY; w = 0.314531 * safezoneW; h = 0.055 * safezoneH; colorBackground[] = {0,0,0,0.3}; }; class healthico: Life_RscPicture { idc = 1200; text = "icons\health.paa"; x = 0.345312 * safezoneW + safezoneX; y = 0.94 * safezoneH + safezoneY; w = 0.020625 * safezoneW; h = 0.033 * safezoneH; }; class foodico: Life_RscPicture { idc = 1201; text = "icons\drink.paa"; x = 0.448438 * safezoneW + safezoneX; y = 0.94 * safezoneH + safezoneY; w = 0.020625 * safezoneW; h = 0.033 * safezoneH; }; class thirstico: Life_RscPicture { idc = 1202; text = "icons\food.paa"; x = 0.551562 * safezoneW + safezoneX; y = 0.94 * safezoneH + safezoneY; w = 0.020625 * safezoneW; h = 0.033 * safezoneH; }; class healthtext: Life_RscStructuredText { idc = 1100; text = ""; x = 0.371094 * safezoneW + safezoneX; y = 0.94 * safezoneH + safezoneY; w = 0.0721875 * safezoneW; h = 0.033 * safezoneH; colorText[] = {1,1,1,1}; class Attributes { color = "#FFFFFF"; align = "LEFT"; valign = "bottom"; underline = false; }; }; class foodtext: Life_RscStructuredText { idc = 1101; text = ""; x = 0.474219 * safezoneW + safezoneX; y = 0.94 * safezoneH + safezoneY; w = 0.0721875 * safezoneW; h = 0.033 * safezoneH; class Attributes { color = "#FFFFFF"; align = "LEFT"; valign = "bottom"; underline = false; }; }; class thirsttext: Life_RscStructuredText { idc = 1102; text = ""; x = 0.577344 * safezoneW + safezoneX; y = 0.94 * safezoneH + safezoneY; w = 0.0721875 * safezoneW; h = 0.033 * safezoneH; class Attributes { color = "#FFFFFF"; align = "LEFT"; valign = "bottom"; underline = false; }; }; class banktitle: Life_RscStructuredText { idc = 1001; text = "Bank"; //--- ToDo: Localize; x = 0.891875 * safezoneW + safezoneX; y = 0.819 * safezoneH + safezoneY; w = 0.0928125 * safezoneW; h = 0.011 * safezoneH; colorBackground[] = {1,0,0,1}; }; class cashtitle: Life_RscStructuredText { idc = 1002; text = "Cash"; //--- ToDo: Localize; x = 0.891875 * safezoneW + safezoneX; y = 0.874 * safezoneH + safezoneY; w = 0.0928125 * safezoneW; h = 0.011 * safezoneH; colorBackground[] = {1,0,0,1}; }; class bankbg: Life_RscText { idc = 1004; x = 0.891875 * safezoneW + safezoneX; y = 0.83 * safezoneH + safezoneY; w = 0.0928125 * safezoneW; h = 0.044 * safezoneH; colorBackground[] = {0,0,0,0.3}; }; class cashbg: Life_RscText { idc = 1005; x = 0.891875 * safezoneW + safezoneX; y = 0.885 * safezoneH + safezoneY; w = 0.0928125 * safezoneW; h = 0.044 * safezoneH; colorBackground[] = {0,0,0,0.3}; }; class bankcount: Life_RscStructuredText { idc = 1103; text = ""; x = 0.897031 * safezoneW + safezoneX; y = 0.841 * safezoneH + safezoneY; w = 0.0825 * safezoneW; h = 0.022 * safezoneH; colorBackground[] = {-1,-1,-1,0}; }; class cashcount: Life_RscStructuredText { idc = 1104; text = ""; x = 0.897031 * safezoneW + safezoneX; y = 0.896 * safezoneH + safezoneY; w = 0.0825 * safezoneW; h = 0.022 * safezoneH; colorBackground[] = {-1,-1,-1,0}; }; class playersbg: Life_RscText { idc = 1003; x = 0.891875 * safezoneW + safezoneX; y = 0.94 * safezoneH + safezoneY; w = 0.0928125 * safezoneW; h = 0.044 * safezoneH; colorBackground[] = {0,0,0,0.3}; }; class playercount: Life_RscStructuredText { idc = 1105; text = ""; x = 0.897031 * safezoneW + safezoneX; y = 0.951 * safezoneH + safezoneY; w = 0.0825 * safezoneW; h = 0.022 * safezoneH; colorBackground[] = {-1,-1,-1,0}; }; class Playerstitle: Life_RscStructuredText { idc = 1006; text = "Players"; //--- ToDo: Localize; x = 0.891875 * safezoneW + safezoneX; y = 0.929 * safezoneH + safezoneY; w = 0.0928125 * safezoneW; h = 0.011 * safezoneH; colorBackground[] = {1,0,0,1}; //sizeEx = 0.9 * GUI_GRID_H; }; class watermark: Life_RscPicture { idc = 1203; text = "textures\logo.paa"; x = 0.0101562 * safezoneW + safezoneX; y = 0.885 * safezoneH + safezoneY; w = 0.0721875 * safezoneW; h = 0.099 * safezoneH; }; }; }; ^^ now, yes it has #include "common,hpp" at the top that was just because I was testing it in editor. So you can remove it but just to be safe i left it there !!!!! THERE IS A WATERMARK ELEMENT AT THE BOTTOM PUT YOUR LOGO THERE (if you have one) BUT MAKE SURE IT'S NOT A SQUARE NUMBER E.G. IT'S NOT 256 X 256 OR 512 X 512, IT NEEDS TO BE SOMETHING LIKE 200 X 300 (IT CAN HAVE WHITE SPACE BTW) KK TY !!!!! Step 2: go into "core\scripts" and create a file called "custHud.sqf" and add the following into it: #include "..\..\script_macros.hpp" /* Author: David Edited: Dark (Custom colours & precise stats) Community: ArmaCentral RP & Altisliferpg.com & InfiniteNetwork.xyz Don't edit or redistribute without asking, 1st not cool, 2nd I will DMCA you, ask slyfoxgaming :) */ disableSerialization; 1 cutRsc ["custHUD","PLAIN"]; waitUntil {!isNull (uiNameSpace getVariable "custHUD")}; //Displays _display = uiNameSpace getVariable "custHUD"; _healthidc = _display displayCtrl 1100; _foodidc = _display displayCtrl 1101; _thirstidc = _display displayCtrl 1102; _bankidc = _display displayCtrl 1103; _cashidc = _display displayCtrl 1104; _playeridc = _display displayCtrl 1105; //titles _banktitle = _display displayCtrl 1001; _cashtitle = _display displayCtrl 1002; _playertitle = _display displayCtrl 1006; //Stats _damage = round((1 - (damage player)) * 100); // //PLEASE COMMENT OUT >>ONE<< OF THE TWO SETS OF VARIABLES BELOW // //THIS ONE OS FOR TEXT E.G. | IM HEALTHY | NEED SOME FOOD | NOT THIRSTY | _hunger = life_hunger; _thirst = life_thirst; //THIS ONE OS FOR EXACT VALUES E.G.| 100% HEALTH | 100% FOOD | 100% THIRST | _hunger = round(life_hunger); _thirst = round(life_thirst); _cash = [CASH] call life_fnc_numberText; _bank = [BANK] call life_fnc_numberText; _players = count playableUnits; //Colours _colourDefault = parseText "#adadad"; _colour108 = parseText "#FF7000"; _colour107 = parseText "#FF9000"; _colour106 = parseText "#FFBB00"; _colour105 = parseText "#FFCC00"; _colour104 = parseText "#81CCDD"; _colour103 = parseText "#33AACC"; _colour102 = parseText "#3388CC"; _colour101 = parseText "#3366CC"; _colour100 = parseText "#336600"; _colour90 = parseText "#339900"; _colour80 = parseText "#33CC00"; _colour70 = parseText "#33FF00"; _colour60 = parseText "#66FF00"; _colour50 = parseText "#CCFF00"; _colour40 = parseText "#CCCC00"; _colour30 = parseText "#CC9900"; _colour20 = parseText "#CC6600"; _colour10 = parseText "#CC3300"; _colour0 = parseText "#CC0000"; _colourDead = parseText "#000000"; _colourDamage = _colourDefault; switch true do { case(_damage >= 100) : {_colourDamage = _colour100;}; case((_damage >= 90) && (_damage < 100)) : {_colourDamage = _colour100;}; case((_damage >= 80) && (_damage < 90)) : {_colourDamage = _colour80;}; case((_damage >= 70) && (_damage < 80)) : {_colourDamage = _colour70;}; case((_damage >= 60) && (_damage < 70)) : {_colourDamage = _colour60;}; case((_damage >= 50) && (_damage < 60)) : {_colourDamage = _colour50;}; case((_damage >= 40) && (_damage < 50)) : {_colourDamage = _colour40;}; case((_damage >= 30) && (_damage < 40)) : {_colourDamage = _colour30;}; case((_damage >= 20) && (_damage < 30)) : {_colourDamage = _colour20;}; case((_damage >= 10) && (_damage < 20)) : {_colourDamage = _colour10;}; case((_damage >= 1) && (_damage < 10)) : {_colourDamage = _colour0;}; case(_damage < 1) :{_colourDamage = _colourDead;}; }; _colourHunger = _colourDefault; switch true do { case(_hunger >= 100) :{_colourHunger = _colour100;}; case((_hunger >= 90) && (_hunger < 100)) : {_colourHunger = _colour90;}; case((_hunger >= 80) && (_hunger < 90)) : {_colourHunger = _colour80;}; case((_hunger >= 70) && (_hunger < 80)) : {_colourHunger = _colour70;}; case((_hunger >= 60) && (_hunger < 70)) : {_colourHunger = _colour60;}; case((_hunger >= 50) && (_hunger < 60)) : {_colourHunger = _colour50;}; case((_hunger >= 40) && (_hunger < 50)) : {_colourHunger = _colour40;}; case((_hunger >= 30) && (_hunger < 40)) : {_colourHunger = _colour30;}; case((_hunger >= 20) && (_hunger < 30)) : {_colourHunger = _colour20;}; case((_hunger >= 10) && (_hunger < 20)) : {_colourHunger = _colour10;}; case((_hunger >= 1) && (_hunger < 10)) : {_colourHunger = _colour0;}; case(_hunger < 1) :{_colourHunger = _colourDead;}; }; _colourThirst = _colourDefault; switch true do { case(_thirst >= 100) : {_colourThirst = _colour101;}; case((_thirst >= 90) && (_thirst < 100)) : {_colourThirst = _colour102;}; case((_thirst >= 80) && (_thirst < 90)) : {_colourThirst = _colour103;}; case((_thirst >= 70) && (_thirst < 80)) : {_colourThirst = _colour104;}; case((_thirst >= 60) && (_thirst < 70)) : {_colourThirst = _colour105;}; case((_thirst >= 50) && (_thirst < 60)) : {_colourThirst = _colour106;}; case((_thirst >= 40) && (_thirst < 50)) : {_colourThirst = _colour107;}; case((_thirst >= 30) && (_thirst < 40)) : {_colourThirst = _colour108;}; case((_thirst >= 20) && (_thirst < 30)) : {_colourThirst = _colour20;}; case((_thirst >= 10) && (_thirst < 20)) : {_colourThirst = _colour10;}; case((_thirst >= 1) && (_thirst < 10)) : {_colourThirst = _colour0;}; case(_thirst < 1) : {_colourThirst = _colourDead;}; }; if (_damage < 100) then { _healthtext = parseText format["Very Healthy"]; } else { if (_damage < 85) then { _healthtext = parseText format["A few scratches"]; } else { if (_damage < 70) then { _healthtext = parseText format["Slightly injured"]; } else { if (_damage < 60) then { _healthtext = parseText format["Not feeling well"]; } else { if (_damage < 50 ) then { _healthtext = parseText format["Starting to feel pain"]; } else { if (_damage < 40) then { _healthtext = parseText format["I feel pain"]; } else { if (_damage < 30) then { _healthtext = parseText format["Something must be broken"]; } else { if (_damage < 20) then { _healthtext = parseText format["Horribly injured"]; } else { if (_damage < 10) then { _healthtext = parseText format["Extremely injured"]; } else { if (_damage == 0) then { _healthtext = parseText format["Dead</t>"]; };};};};};};};};};}; if (_hunger > 90) then { _hungertext = parseText format["I'm not hungry"]; } else { if (_hunger > 80) then { _hungertext = parseText format["Not hungry at all"]; } else { if (_hunger > 70) then { _hungertext = parseText format["Could use some crackers"]; } else { if (_hunger > 60) then { _hungertext = parseText format["Might need something soon"]; } else { if (_hunger > 50) then { _hungertext = parseText format["Stomach is feeling empty"]; } else { if (_hunger > 40) then { _hungertext = parseText format["I should eat soon"]; } else { if (_hunger > 30) then { _hungertext = parseText format["My stomach is grumbling"]; } else { if (_hunger > 20) then { _hungertext = parseText format["I need to eat now"]; } else { if (_hunger > 10) then { _hungertext = parseText format["Starvation is kicking in"]; } else { if (_hunger == 0) then { _hungertext = parseText format["Dead</t>"]; };};};};};};};};};}; if (_thirst > 80) then { _thirsttext = parseText format["Not thirsty"]; } else { if (_thirst > 70) then { _thirsttext = parseText format["Could use a glass of water"]; } else { if (_thirst > 60) then { _thirsttext = parseText format["Should drink something soon"]; } else { if (_thirst > 50) then { _thirsttext = parseText format["Throat is a little dry"]; } else { if (_thirst > 40) then { _thirsttext = parseText format["I should drink soon"]; } else { if (_thirst > 30) then { _thirsttext = parseText format["My throat is dry"]; } else { if (_thirst > 20) then { _thirsttext = parseText format["I should drink now"]; } else { if (_thirst > 10) then { _thirsttext = parseText format["Dehydration Feels Horrible"]; } else { if (_thirst == 0) then { _thirsttext = parseText format["DEAD</t>"]; };};};};};};};};}; _healthidc ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.7' color='%3'>%2%1</t>","%",_damage,_colourDamage]); _foodidc ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.7' color='%3'>%2%1</t>","%",_hunger,_colourHunger]); _thirstidc ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.7' color='%3'>%2%1</t>","%",_thirst,_colourThirst]); ////^^^^^^^^^^^ HAS EXACT VALUES E.G. HUNGER 100% | THIRST 100% | HEALTH 100% //// //// COMMENT ONE OF THE TWO OUT AS IF YOU DONT, IT WONT WORK ---- REFER TO THE VARIABLES AT THE TOP, THE ONE YOU COMMENTED OUT CORROSPONDS TO THE ONE YOU SHOULD USE NOW!!!!!!!! //// //// THIS ONE BELOW HAS TEXT E.G. HEALTH: SERIOUSLY INJURED | THIRST: NOT THIRSTY | HUNGER: NOT HUNGRY _healthidc ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.7' color='%2'>%1</t>",_healthtext,_colourDamage]); _foodidc ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.7' color='%2'>%1</t>",_hungertext,_colourHunger]); _thirstidc ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.7' color='%2'>%1</t>",_thirsttext,_colourThirst]); //DONT COMMENT THE BELLOW OUT _cashidc ctrlSetStructuredText (parseText format ["$%1",_cash]); _bankidc ctrlSetStructuredText (parseText format ["$%1",_bank]); _playeridc ctrlSetStructuredText (parseText format ["%1",_players]); _cashtitle ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.5'>Cash</t>"]); _banktitle ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.5'>Bank</t>"]); _playertitle ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.5'>Players</t>"]); Step 3: Go into your "core\fn_initCop.sqf & fn_initCiv.sqf & fn_initMed.sqf" and add the following line near the bottom: [] execVM "core\scripts\custHud.sqf"; Step 3: add the same line into your "core\functions\fn_hudupdate.sqf" BELLOW OR ABOVE WHAT YOU COMMENTED OUT!!! [] execVM "core\scripts\custHud.sqf"; Step 4: Go into each file listed bellow and add the following code at the bottom of each: [] call life_fnc_hudUpdate; Files: fn_bankDeposit.sqf fn_bankTransfer.sqf fn_bankWithdraw.sqf fn_gangWithdraw.sqf fn_gangDeposit.sqf fn_giveMoney.sqf anywhere else money is taken or received.sqf Step 5: Go into your description.ext and add the following under "class RscTitles" #include "dialog\custHud.hpp" Put the below images into the icons section folder, if you don't have one (you should) make one and... Done health.paa drink.paa food.paa
  18. 1 point
    Download a copy of the framework through one of the official channels, until then :wave:
  19. 1 point
    NVM, not offering support. The framework is licensed under CC BY-NC-ND. It is a violation of the license to remove the author.
  20. 1 point
    Or 0, if you have public cop slots.
  21. 1 point
    G'Day, Add this as the very top case statement. ArmA doesn't check every case, once it meets a case that returns true it exits the switch. case (FETCH_CONST(life_adminlevel) > 0): {format ["<img image='textures\admin\staff.paa' size='1'></img> <t>[STAFF TEAM] %1</t>", name player];}; OR case (getPlayerUID player in ["76561198102102342","76561198102102342","76561198102102342"]): {format ["<img image='textures\admin\staff.paa' size='1'></img> <t>[STAFF TEAM] %1</t>",name player];}; I recomend the icon you use be minimum 64x64px
  22. 1 point
    core/shops/fn_vehicleShopBuy.sqf if ((life_veh_shop select 0) == "med_air_hs") then { _vehicle = createVehicle [_className,[0,0,999],[], 0, "NONE"]; waitUntil {!isNil "_vehicle" && {!isNull _vehicle}}; //Wait? _vehicle allowDamage false; _hs = nearestObjects[getMarkerPos _spawnPoint,["Land_Hospital_side2_F"],50] select 0; _vehicle setPosATL (_hs modelToWorld [-0.4,-4,12.65]); sleep 0.6; Line 89.
  23. 1 point
  24. 1 point
    This script changes how tazing players works, instead of applying a tazing animation, it will use a ragdoll animation to simulate losing control of your body. Now this ragdoll will only last 5 seconds, so i have added the effect of applying full fatigue, and damaging the player to 60% health, to force limping. Step one: open up fn_tazed, replace all with this: #include "..\..\script_macros.hpp" /* File: fn_tazed.sqf Author: Bryan "Tonic" Boardwine Editor: Repentz to improve the function Description: Starts the tazed animation and broadcasts out what it needs to. */ private["_unit","_shooter","_curWep","_curMags","_attach"]; _unit = param [0,Objnull,[Objnull]]; _shooter = param [1,Objnull,[Objnull]]; if(isNull _unit OR isNull _shooter) exitWith {player allowDamage true; life_istazed = false;}; if(player getVariable["restrained",false]) exitWith {}; _time = time; if(_shooter isKindOf "Man" && alive player) then { if(!life_istazed) then { life_istazed = true; "DynamicBlur" ppEffectEnable true; "DynamicBlur" ppEffectAdjust [20]; "DynamicBlur" ppEffectCommit 1; player allowDamage false; if(isNull objectParent player) then { for [{_x=1},{_x<=10},{_x=_x+1}] do { call SOCK_fnc_tazeRagdoll; sleep 0.1; if(animationState player == "unconscious") exitWith{}}; }; //[_unit] remoteExecCall ["life_fnc_tazeSound",RCLIENT]; [0,"STR_NOTF_Tazed",true,[profileName, _shooter getVariable["realname",name _shooter]]] remoteExecCall ["life_client_fnc_broadcast",-2]; disableUserInput true; player setDamage 0; waitUntil{animationState player != "unconscious"}; _anim = if(isNull objectParent player) then {"Incapacitated"} else {"kia_driver_mid01"}; [player,_anim] remoteExec ["life_client_fnc_animSync",0]; waitUntil{time - _time >= 15}; player allowDamage true; if(!(player getVariable["Escorting",false])) then { detach player; }; "DynamicBlur" ppEffectEnable false; life_istazed = false; disableUserInput false; player playMoveNow "amovppnemstpsraswrfldnon"; player setFatigue 1; //no running for you player setdamage 0.6; //especially no running for you }; } else { _unit allowDamage true; life_iztazed = false; }; Next, create a new file called fn_tazeRagdoll.sqf, place it in core -> session Put the following into it: if (!isNull objectParent player) exitWith {}; private "_tazered"; _tazered = "Land_Can_V3_F" createVehicleLocal [0,0,0]; _tazered setMass 1e10; _tazered attachTo [player, [0,0,0], "Spine3"]; _tazered setVelocity [0,0,6]; detach _tazered; 0 = _tazered spawn { deleteVehicle _this; }; Call this function in functions.h under file = "Core\session"; place: class tazeRagdoll {}; Tell me how it works.
  25. 1 point
    Well preferably you'd use the arma 3 discord invite link as any other link would take you elsewhere.
  26. 1 point
    To get the in-game day time you can use: private _date = date; //--- Returns [year, month, day, hour, minute] in array. private _day = _date select 2; private _hour = _date select 3; private _minute = _date select 4; To get the server time/restart time/mission start time you can use: private _serverTime = serverTime; //--- Returns the exact time passed since mission start.
  27. 1 point
  28. 1 point
    I released something.. If someone chooses to use it thats fine, but if they want stuff added. Im not going to do it for them, i will guide them if they start but not going to spoon feed them!
  29. 1 point
    Don't post a script and then be an asshole when someone asks for help on your OWN script.
  30. 1 point
    Hey ! i misspoke. In fact, the mod in play, and the teamspeak plugin will check via your computer, the teamspeak to which you are connected: if it contains the channel specifies with the password specified. For the mod, i don't know why it isn't working. You should try to remove all that you do to install de mod, and re-try ^^. Good luck to you.
  31. 1 point
    I absolutely love this server, I try my best to get away, but the cops are trained so well. they catch me every time. The time and work put into the server is incredible, from the custom bridge to the the most fire textures from their EMS outfit to the SWAT outfit, just BEAUTIFUL, 10/10 would recommend. As well as their staff actually know what the hell, their doing and how to fix even the slightest issues. As well as being active and the civilian population is the least toxic community, I've seen out there.
  32. 1 point
  33. 1 point
    @BarneyR. v2 I fixed it, and it works fine now. I use 5.0 Auction_House_by_Fresqo_edited_by_B4v4r!4n_Str!k3r_for_4.4.rar
  34. 1 point
    Not accusing you of stealing you could have ownership over them but why are some things labeled as "abeloth", just seems like it's abeloth's mission file renamed
  35. 1 point
    You have X amount of skins, for the cops force. Rank 1 > X. If Config_Master > copExtendedSkins = 1 then depending on the rank of the player, it will give that player the uniform for that rank. https://github.com/AsYetUntitled/Framework/blob/9ae6fb54e5eaaa704fd4ad4bab3fdee38b5d0695/Altis_Life.Altis/core/functions/fn_playerSkins.sqf#L43 Skins would be called: cop_uniform_1, cop_uniform_2, cop_uniform_3,cop_uniform_4 etc etc. The above link, shows where it gets called from. If the cop level is 1 is gives the player the uniform for rank 1.
  36. 1 point
    For cops >> fn_initCop.sqf if(FETCH_CONST(life_coplevel) > 5) exitWith { player addAction ... };
  37. 1 point
    Make an addaction , and when you click on it , make it creates another addaction
  38. 1 point
    what the fuck are you on about?
  39. 1 point
    Unless you touched and modified something you shouldn't have inside you init.sqf file it should have this if(isDedicated && isNil("life_market_prices")) then { [] call life_fnc_marketconfiguration; diag_log "Market prices generated!"; "life_market_prices" addPublicVariableEventHandler{diag_log format["Market prices updated! %1", _this select 1];};
  40. 1 point
    Can't i get the phone to my server
  41. 1 point
    Why do you want to de-obfuscate it? If the PBO is your's then you should have the key to it... Not trying to steal are we?
  42. 1 point
    @Kadir_Sexy in your market.hpp find "listResources" add sizeEX to the class class listResources: Life_RscListbox { idc = 1500; x = 5.5 * GUI_GRID_W + GUI_GRID_X; y = 2.5 * GUI_GRID_H + GUI_GRID_Y; w = 10.5 * GUI_GRID_W; h = 19.5 * GUI_GRID_H; sizeEx = 1.2 * GUI_GRID_H; onLBSelChanged = "[] spawn life_fnc_refreshMarketView"; };
  43. 1 point
    If you would of read your error you would of seen what you did wrong, he only helped because it was a simple error a 4 year old would of seen.
  44. 1 point
    Autor: Entity Replace the spawnSelection.hpp by that: class life_spawn_selection { idd = 38500; movingEnabled = 0; enableSimulation = 1; class controlsBackground { class life_RscTitleBackground: Life_RscText { idc = 1000; x = 0.0101577 * safezoneW + safezoneX; y = 0.0291999 * safezoneH + safezoneY; w = 0.170156 * safezoneW; h = 0.9438 * safezoneH; colorBackground[] = {0.294,0.286,0.286,0.8}; }; class Title: Life_RscText { idc = 1001; text = "Spawn Selection"; x = 0.0132501 * safezoneW + safezoneX; y = 0.0402 * safezoneH + safezoneY; w = 0.164999 * safezoneW; h = 0.0242 * safezoneH; }; class MapView: Life_RscMapControl { idc = 38502; x = 0.183407 * safezoneW + safezoneX; y = 0.0292 * safezoneH + safezoneY; w = 0.8085 * safezoneW; h = 0.9438 * safezoneH; maxSatelliteAlpha = 0.75; alphaFadeStartScale = 1.15; alphaFadeEndScale = 1.29; }; }; class controls { class spawnList: Life_RscListNbox { idc = 38510; x = 0.0153125 * safezoneW + safezoneX; y = 0.071 * safezoneH + safezoneY; w = 0.159844 * safezoneW; h = 0.847 * safezoneH; text = ""; sizeEx = 0.041; coloumns[] = {0,0,0.9}; drawSideArrows = 1; idcLeft = -1; idcRight = -1; rowHeight = 0.050; onLBSelChanged = "_this call life_fnc_spawnPointSelected;"; }; class spawnButton: Life_RscButtonMenu { idc = -1; text = "Enter"; x = 0.0153125 * safezoneW + safezoneX; y = 0.9246 * safezoneH + safezoneY; w = 0.159844 * safezoneW; h = 0.033 * safezoneH; style = "0x02"; colorBackground[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.3843])", "(profilenamespace getvariable ['GUI_BCG_RGB_G',0.7019])", "(profilenamespace getvariable ['GUI_BCG_RGB_B',0.8862])", 0.5}; colorBackgroundActive[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.69])","(profilenamespace getvariable ['GUI_BCG_RGB_G',0.75])","(profilenamespace getvariable ['GUI_BCG_RGB_B',0.5])",1}; colorBackgroundDisabled[] = {0.95,0.95,0.95,0}; offsetX = 0.003; offsetY = 0.003; offsetPressedX = 0.002; offsetPressedY = 0.002; colorShadow[] = {0,0,0,1}; colorBorder[] = {0,0,0,0}; borderSize = 0.008; onButtonClick = "[] call life_fnc_spawnConfirm"; }; }; }; Screenshot:http://imgur.com/nrCSz9c Finish !
  45. 1 point
    Difficulty: Easy Create Original Idea : Kuchiha Authors: AlaskaVet Okay in core/items make a new file called "fn_weed.sqf" /* Author:AlaskaVet */ //Close inventory closeDialog 0; //Little hint then wait a litle before starting drugs effects hint "Winners don't use drugs !"; sleep 3; //Activate ppEffects we need "chromAberration" ppEffectEnable true; "radialBlur" ppEffectEnable true; enableCamShake true; _smoke = "SmokeShellGreen" createVehicle position player; if (vehicle player != player) then { _smoke attachTo [vehicle player, [-0.6,-1,0]]; } else { _smoke attachTo [player, [0,-0.1,1.5]]; }; //Let's go for 45secs of effetcs for "_i" from 0 to 44 do { "chromAberration" ppEffectAdjust [random 0.25,random 0.25,true]; "chromAberration" ppEffectCommit 1; "radialBlur" ppEffectAdjust [random 0.02,random 0.02,0.15,0.15]; "radialBlur" ppEffectCommit 1; addcamShake[random 3, 1, random 3]; sleep 1; }; //Stop effects "chromAberration" ppEffectAdjust [0,0,true]; "chromAberration" ppEffectCommit 5; "radialBlur" ppEffectAdjust [0,0,0,0]; "radialBlur" ppEffectCommit 5; sleep 6; //Deactivate ppEffects "chromAberration" ppEffectEnable false; "radialBlur" ppEffectEnable false; resetCamShake; Now go Into core/pmenu & open "fn_useItem.sqf" Add under like lock picks like so: case (_item isEqualTo "lockpick"): { [] spawn life_fnc_lockpick; closeDialog 0; }; case (_item isEqualTo "marijuana"): { if(([false,_item,1] call life_fnc_handleInv)) then { [] spawn life_fnc_weed; }; }; Then Go into file "Functions.h" find "class Items" and add: class weed {};
  46. 1 point
    I've made a few textures during my time on Altis Life, they're not in use any more so I figured why not share here. The textures include my rendition of UK police uniforms and vehicles, along with a few medic vehicles. Here's an album of said textures (class names for uniforms included) Download is attached to this post, enjoy! Textures.rar
  47. 1 point
    if (typeOf _curTarget == "O_Truck_03_device_F", "O_T_Truck_03_device_ghex_F") then { _Btn3 ctrlSetText localize "STR_vInAct_DeviceMine"; _Btn3 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_deviceMine"; if (!isNil {(_curTarget getVariable "mining")} || !local _curTarget && {_curTarget in life_vehicles}) then { _Btn3 ctrlEnable false; } else { _Btn3 ctrlEnable true; }; } else { _Btn3 ctrlShow false; if (typeOf (_curTarget) in ["C_Van_01_fuel_F","I_Truck_02_fuel_F","B_Truck_01_fuel_F"] && _curTarget in life_vehicles) then { if (!isNil {_curTarget getVariable "fuelTankWork"}) then { _Btn3 ctrlSetText localize "STR_FuelTank_Stop"; _Btn3 buttonSetAction "life_vInact_curTarget setVariable [""fuelTankWork"",nil,true]; closeDialog 0;"; _Btn3 ctrlShow true; } else { if (count (nearestObjects [_curTarget, ["Land_FuelStation_Feed_F","Land_fs_feed_F"], 15]) > 0) then { _Btn3 ctrlSetText localize "STR_FuelTank_Supply"; _Btn3 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_fuelSupply"; _Btn3 ctrlShow true; }else{ { if (player distance (getMarkerPos _x) < 20) exitWith { _Btn3 ctrlSetText localize "STR_FuelTank_Store"; _Btn3 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_fuelStore"; _Btn3 ctrlShow true; }; } forEach ["fuel_storage_1","fuel_storage_2"]; }; }; }; }; ^^ Try this in the If statement you were asking if both vehicles were the cursor target, so just try and see if that works.
  48. 1 point
    Compañero para eso hay que ver el log para saber lo que es
  49. 1 point
    Holy shit your server or that server looks nice, love the y menu and status bar.
  50. 1 point
    If you put your fn_IntroCam.sqf in the script folder it should be if (life_firstSpawn) then { [] spawn { cutText ["","BLACK IN"]; [] execVM "script\fn_IntroCam.sqf"; life_firstSpawn = false; }; };