Custom Weapon HUD

Discussion in 'Scripting Discussions' started by chinadayz, Aug 13, 2017.

Tags:
  1. chinadayz

    chinadayz New Member

    Joined:
    Aug 13, 2017
    Messages:
    5
    Likes Received:
    0
  2. chinadayz

    chinadayz New Member

    Joined:
    Aug 13, 2017
    Messages:
    5
    Likes Received:
    0
    two primary weapons
     
  3. chinadayz

    chinadayz New Member

    Joined:
    Aug 13, 2017
    Messages:
    5
    Likes Received:
    0
    My English is so bad
    please help me
     
  4. FallingSheep

    FallingSheep OpenDayZ Lord!

    Joined:
    Mar 17, 2013
    Messages:
    1,963
    Likes Received:
    576
    ripped from my 1.0.5 repack

    lets you switch weapons and use bandage, only has 1 primary weapon

    create a folder called scripts then create a folder called weaponswitch inside

    description.ext
    add at top
    Code:
    //Weapon HUD
    #include "scripts\weaponswitch\weaponHud.hpp"
    
    dayz_spaceInterrupt.sqf
    add just above _handled
    Code:
    //Weapon Switch
    if (_dikCode == 0x02) then {player selectWeapon (primaryWeapon player);};
    if (_dikCode == 0x03) then { _handgun ="";{if((getNumber (configFile >> "CfgWeapons" >> (_x) >> "type")) == 2) then {_handgun = _x;};}foreach weapons player;player selectweapon _handgun;};
    if (_dikCode == 0x04) then {[0,0,0,[player]] execVM "\z\addons\dayz_code\medical\bandage.sqf";};
    if (_dikCode == 0x05) then { };
    
    init.sqf
    Code:
    if (!isserver) then {
    execvm "scripts\weaponswitch\weaponHud.sqf";
    };
    
    weaponhud.hpp
    create new file called weaponhud.hpp and save in scripts/weaponswitch
    Code:
    class weaponHud
        {
            idd = -1;
            movingenable = true;
            duration = 3;
            onLoad = "((_this select 0) displayCtrl 1200) ctrlSetText (gettext (configFile >> 'cfgWeapons' >> (primaryWeapon player) >> 'picture'));{if ((getNumber (configFile >> 'CfgWeapons' >> _x >> 'Type')) == 2) exitWith {((_this select 0) displayCtrl 1201) ctrlSetText (gettext(configFile >> 'cfgWeapons' >> _x >> 'picture'));};} foreach weapons player;_hasbandage = 'ItemBandage' in magazines player;if (_hasbandage) then {(_this select 0) displayCtrl 1202 ctrlSetText (gettext (configFile >> 'cfgMagazines' >> 'itembandage' >> 'picture'));};";
            class Controls
            {
    
             
    //START DIALOG         
    
    class RscText_1002: RscText
    {
        idc = 1002;
        text = "1";
        x = 0.276647 * safezoneW + safezoneX;
        y = 0.909196 * safezoneH + safezoneY;
        w = 0.0700046 * safezoneW;
        h = 0.0700182 * safezoneH;
    };
    
    class RscText_1003: RscText
    {
        idc = 1003;
        text = "2";
        x = 0.387408 * safezoneW + safezoneX;
        y = 0.908743 * safezoneH + safezoneY;
        w = 0.0700046 * safezoneW;
        h = 0.0700182 * safezoneH;
    };
    
    class RscText_1000: RscText
    {
        idc = 1000;
        text = "3";
        x = 0.500773 * safezoneW + safezoneX;
        y = 0.911168 * safezoneH + safezoneY;
        w = 0.0700046 * safezoneW;
        h = 0.0700182 * safezoneH;
    };
    class RscText_1001: RscText
    {
        idc = 1001;
        text = "4";
        x = 0.611519 * safezoneW + safezoneX;
        y = 0.90753 * safezoneH + safezoneY;
        w = 0.0700046 * safezoneW;
        h = 0.0700182 * safezoneH;
    };
    
    
    class RscPicture_1200: RscPicture
    {
        idc = 1200;
        text = "#(argb,8,8,3)color(0,0,0,0)";
        x = 0.290628 * safezoneW + safezoneX;
        y = 0.911168 * safezoneH + safezoneY;
        w = 0.0700046 * safezoneW;
        h = 0.0700182 * safezoneH;
        colorBackground[] = {0,0,0,0};
    };
    
    class RscPicture_1201: RscPicture
    {
        idc = 1201;
        text = "#(argb,8,8,3)color(0,0,0,0)";
        x = 0.401556 * safezoneW + safezoneX;
        y = 0.90753 * safezoneH + safezoneY;
        w = 0.0700046 * safezoneW;
        h = 0.0700182 * safezoneH;
        colorBackground[] = {0,0,0,0};
    };
    
    class RscPicture_1202: RscPicture
    {
        idc = 1202;
        text = "#(argb,8,8,3)color(0,0,0,0)";
        x = 0.51492 * safezoneW + safezoneX;
        y = 0.909955 * safezoneH + safezoneY;
        w = 0.0700046 * safezoneW;
        h = 0.0700182 * safezoneH;
        colorBackground[] = {0,0,0,0};
    };
    
    class RscPicture_1203: RscPicture
    {
        idc = 1203;
        text = "#(argb,8,8,3)color(0,0,0,0)";
        x = 0.626441 * safezoneW + safezoneX;
        y = 0.905106 * safezoneH + safezoneY;
        w = 0.0700046 * safezoneW;
        h = 0.0700182 * safezoneH;
        colorBackground[] = {0,0,0,0};
    }; 
    
    //END DIALOG
    
            };
        };
    
    weaponHud.sqf
    create new file called weaponhud.sqf and save in scripts/weaponswitch
    Code:
    disableserialization;
    _layer = 100;
    while {true} do {
    sleep 2.5;
    if (_layer == 100) then {_layer = 101;} else { _layer = 100;};
    _layer cutrsc ["weaponHud","Plain",1];
    };
    

    hope this helps :)

    i will try make it support 2 primary weapons if i get time
     
  5. chinadayz

    chinadayz New Member

    Joined:
    Aug 13, 2017
    Messages:
    5
    Likes Received:
    0
    Thank you very much,I already have this,I need to 2 primary weapons。
    非常感谢您·这个脚本我之前已经实现了,还是非常期待2个 primary weapons。
     
  6. Zeehond23

    Zeehond23 Valued Member!

    Joined:
    Mar 7, 2013
    Messages:
    589
    Likes Received:
    52
    Sheep, would it work for vanilla dayz with some tweaks?
     
  7. chinadayz

    chinadayz New Member

    Joined:
    Aug 13, 2017
    Messages:
    5
    Likes Received:
    0
    :)help me!!
     
  8. FallingSheep

    FallingSheep OpenDayZ Lord!

    Joined:
    Mar 17, 2013
    Messages:
    1,963
    Likes Received:
    576
    yep should work fine, there not really anything epoch specific about it
     

Share This Page