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

Give Equipment 1.6.1

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

d3m37r4

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

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

Играя в CSGO обычный режим, понравилась фишка с выдачей брони и щипцов в начале раунда, решил реализовать ее для своего сервера в 1.6.
Плагин выдает в каждом раунде бронежилет + шлем, и игроку, который играет за КТ defuse kit.
Узнать больше об этом ресурсе...
 
Сообщения
2,751
Реакции
3,016
Помог
61 раз(а)
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,451
Реакции
1,177
Помог
10 раз(а)
wopox1337, спасибо за подсказку чуть позже исправлю.
 
Сообщения
2,751
Реакции
3,016
Помог
61 раз(а)
Код:
-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;
}
 
Последнее редактирование:
Сообщения
317
Реакции
131
Помог
4 раз(а)
фри броня да еще и шлем онли за кт, в первых раундах вообще дисбаланс, а где справедливость
 
Сообщения
957
Реакции
1,185
Помог
52 раз(а)
alabamaster1337, вы перед тем как написать, код смотрели хоть?
 

d3m37r4

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

d3m37r4

111111
Сообщения
1,451
Реакции
1,177
Помог
10 раз(а)
tarsisd2, i think that this is not entirely appropriate. Idea was different.
 
Сообщения
2,491
Реакции
2,794
Помог
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
Здравствуйте, данный плагин актуален ? можно ставить ? ...
 
Сообщения
3,023
Реакции
1,731
Помог
79 раз(а)
Bravo, актуален, но ставить нельзя, он только для избранных
 
Сообщения
219
Реакции
184
Помог
3 раз(а)
d3m37r4, надо еще в начале раунда оружие перезаряжать ))
 

d3m37r4

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

d3m37r4

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

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

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