Иконка ресурса

Give Equipment 1.6.1

Нет прав для скачивания

d3m37r4

111111
Сообщения
1,420
Реакции
1,162
Помог
10 раз(а)
d3m37r4 добавил(а) новый ресурс:

Give Equipment - Плагин выдает бронежилет + шлем и defuse kit

Играя в CSGO обычный режим, понравилась фишка с выдачей брони и щипцов в начале раунда, решил реализовать ее для своего сервера в 1.6.
Плагин выдает в каждом раунде бронежилет + шлем, и игроку, который играет за КТ defuse kit.
Узнать больше об этом ресурсе...
 
Сообщения
2,713
Реакции
2,993
Помог
59 раз(а)
d3m37r4, что бы не городить проверки на живого используй ReAPI правильно.
RG_CBasePlayer_Spawn можно заменить на:

Код:
/*
    * Description:      Called on spawn, the attempt to equip a player.
    * Params:           (const this, bool addDefault, bool equipGame)
    */
    RG_CBasePlayer_OnSpawnEquip,

ИЛИ

/*
    * Description:      Called by CBasePlayer::Spawn just before releasing the player into the game.
    * Params:           (const index)
    */
    RG_CSGameRules_PlayerSpawn,
Так же учитывай, что кому-то необходимо будет больше 100 брони.
Код:
rg_set_user_armor(iIndex, min(VALUE, 255), ARMOR_VESTHELM);
 
Последнее редактирование:

d3m37r4

111111
Сообщения
1,420
Реакции
1,162
Помог
10 раз(а)
wopox1337, спасибо за подсказку чуть позже исправлю.
 
Сообщения
2,713
Реакции
2,993
Помог
59 раз(а)
Код:
-public CBasePlayer_Spawn(iIndex)
{
    if(!is_user_alive(iIndex))
        return HC_CONTINUE;

    new ArmorType:iArmorType;
-    new iArmor = rg_get_user_armor(iIndex, iArmorType);
-    new TeamName:iTeam = get_member(iIndex, m_iTeam);
    
+    if(rg_get_user_armor(iIndex, iArmorType) < 100 || iArmorType != ARMOR_VESTHELM)               
        rg_set_user_armor(iIndex, 100, ARMOR_VESTHELM);               

-    new bool:bUserHasDefuser = get_member(iIndex, m_bHasDefuser);

+    if(get_member(iIndex, m_iTeam) == TEAM_CT && !get_member(iIndex, m_bHasDefuser))
        rg_give_defusekit(iIndex, true);                           

    return HC_CONTINUE;
}
 
Последнее редактирование:
Сообщения
316
Реакции
131
Помог
4 раз(а)
фри броня да еще и шлем онли за кт, в первых раундах вообще дисбаланс, а где справедливость
 
Сообщения
957
Реакции
1,184
Помог
52 раз(а)
alabamaster1337, вы перед тем как написать, код смотрели хоть?
 

d3m37r4

111111
Сообщения
1,420
Реакции
1,162
Помог
10 раз(а)
Сообщения
2,144
Реакции
1,223
Помог
44 раз(а)
Неактуально для владельцев серверов с плагином AES. То же самое можно выдавать с его помощью.
 
Сообщения
125
Реакции
50
can you edit to give ARMOR_VESTHELM just for the loosing team? so game is more balanced
 

d3m37r4

111111
Сообщения
1,420
Реакции
1,162
Помог
10 раз(а)
tarsisd2, i think that this is not entirely appropriate. Idea was different.
 
Сообщения
2,491
Реакции
2,790
Помог
61 раз(а)
tarsisd2, Please check it
Код:
#include <amxmodx>
#include <reapi>

#define WIN_STATUS_CT 1
#define    WIN_STATUS_TERRORIST 2

public plugin_init() {
    RegisterHookChain(RG_CBasePlayer_OnSpawnEquip, "CBasePlayer_OnSpawnEquip", 1);
}

public CBasePlayer_OnSpawnEquip(const id) {
    new bool:giveArmor;
    switch (get_member_game(m_iRoundWinStatus)) {
        case WIN_STATUS_CT: {
            giveArmor = checkTeam(id, TEAM_TERRORIST);
        }
        
        case WIN_STATUS_TERRORIST: {
            giveArmor = checkTeam(id, TEAM_CT);
        }
        
        default: {
            giveArmor = false;
        }
    }
    
    new ArmorType:armorType;
    if(giveArmor && (rg_get_user_armor(id, armorType) < 100 || armorType != ARMOR_VESTHELM)) {             
        rg_set_user_armor(id, 100, ARMOR_VESTHELM);
    }

    return HC_CONTINUE;
}

bool:checkTeam(const id, const TeamName:team) {
    return bool:(TeamName:get_member(id, m_iTeam) == team);
}
 
Сообщения
125
Реакции
50
tarsisd2, Please check it
Код:
#include <amxmodx>
#include <reapi>

#define WIN_STATUS_CT 1
#define    WIN_STATUS_TERRORIST 2

public plugin_init() {
    RegisterHookChain(RG_CBasePlayer_OnSpawnEquip, "CBasePlayer_OnSpawnEquip", 1);
}

public CBasePlayer_OnSpawnEquip(const id) {
    new bool:giveArmor;
    switch (get_member_game(m_iRoundWinStatus)) {
        case WIN_STATUS_CT: {
            giveArmor = checkTeam(id, TEAM_TERRORIST);
        }
       
        case WIN_STATUS_TERRORIST: {
            giveArmor = checkTeam(id, TEAM_CT);
        }
       
        default: {
            giveArmor = false;
        }
    }
   
    new ArmorType:armorType;
    if(giveArmor && (rg_get_user_armor(id, armorType) < 100 || armorType != ARMOR_VESTHELM)) {            
        rg_set_user_armor(id, 100, ARMOR_VESTHELM);
    }

    return HC_CONTINUE;
}

bool:checkTeam(const id, const TeamName:team) {
    return bool:(TeamName:get_member(id, m_iTeam) == team);
}
works great

now, i want to show a message in chat, tried to add myself but didn't work, can you fix please, and tell me what i did wrong plz?

Код:
#include <amxmodx>
#include <reapi>

#define WIN_STATUS_CT 1
#define    WIN_STATUS_TERRORIST 2

public plugin_init() {
    RegisterHookChain(RG_CBasePlayer_OnSpawnEquip, "CBasePlayer_OnSpawnEquip", 1);
}

public CBasePlayer_OnSpawnEquip(const id) {
    new bool:giveArmor;
    switch (get_member_game(m_iRoundWinStatus)) {
        case WIN_STATUS_CT: {
            giveArmor = checkTeam(id, TEAM_TERRORIST);
            client_print_color(0, print_team_default, "^4[^3Bonus^4] ^3Terrorists ^4won ^1kevlar ^4for loosing the round.");
        }
        
        case WIN_STATUS_TERRORIST: {
            giveArmor = checkTeam(id, TEAM_CT);
            client_print_color(0, print_team_default, "^4[^3Bonus^4] ^3Counter-Terrorists ^4won ^1kevlar ^4for loosing the round.");
        }
        
        default: {
            giveArmor = false;
        }
    }
    
    new ArmorType:armorType;
    if(giveArmor && (rg_get_user_armor(id, armorType) < 100 || armorType != ARMOR_VESTHELM)) {             
        rg_set_user_armor(id, 100, ARMOR_VESTHELM);
    }

    return HC_CONTINUE;
}

bool:checkTeam(const id, const TeamName:team) {
    return bool:(TeamName:get_member(id, m_iTeam) == team);
}

or should be set in this line?

Код:
    new ArmorType:armorType;
    if(giveArmor && (rg_get_user_armor(id, armorType) < 100 || armorType != ARMOR_VESTHELM)) {             
        rg_set_user_armor(id, 100, ARMOR_VESTHELM);
        client_print_color(here)?
 
Сообщения
10
Реакции
2
Здравствуйте, данный плагин актуален ? можно ставить ? ...
 
Сообщения
2,810
Реакции
1,658
Помог
74 раз(а)
Bravo, актуален, но ставить нельзя, он только для избранных
 
Сообщения
219
Реакции
183
Помог
3 раз(а)
d3m37r4, надо еще в начале раунда оружие перезаряжать ))
 

d3m37r4

111111
Сообщения
1,420
Реакции
1,162
Помог
10 раз(а)
gyxoBka, mp_auto_reload_weapons есть :)
 

d3m37r4

111111
Сообщения
1,420
Реакции
1,162
Помог
10 раз(а)

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу