Помогите отнять бронежилет!

Сообщения
48
Реакции
1
Суть проблемы:
Есть код:
C-подобный:
public Event_RoundStart(Handle:event, const String:name[], bool:dontBroadcast)
{
    for ( new i = 1; i <= MaxClients; ++i )
    {
    if ( IsPlayerAlive( i ) && !IsFakeClient( i ))
    {
    SetEntProp(i, Prop_Send, "m_iArmorValue", 0);     
    }
    }
    return bool:Plugin_Continue;
}

Есть ошибка, на которой цикл прерывается и кто-то в броне.
C-подобный:
[SM] Native "SetEntProp" reported: Property "m_iArmorValue" not found (entity 2/player)

Не пойму, что ему надо?
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
Опечатка. Правильно: m_ArmorValue.
Лучше через оффсет:
PHP:
new OffsetArmor;

OffsetArmor = FindSendPropOffs("CCSPlayer", "m_ArmorValue");
if ( IsPlayerAlive( i ) && !IsFakeClient( i ))
Забыто IsClientInGame(i):
PHP:
if (IsClientInGame( i ) && !IsFakeClient( i ) && IsPlayerAlive( i ))
На "живность" можно не проверять.
return bool:Plugin_Continue;
bool: вообще ни к месту. А поскольку нет Action: тега, то строку просто убрать.
 
Сообщения
48
Реакции
1
Опечатка. Правильно: m_ArmorValue.
Лучше через оффсет:
PHP:
new OffsetArmor;

OffsetArmor = FindSendPropOffs("CCSPlayer", "m_ArmorValue");
Забыто IsClientInGame(i):
PHP:
if (IsClientInGame( i ) && !IsFakeClient( i ) && IsPlayerAlive( i ))
На "живность" можно не проверять.bool: вообще ни к месту. А поскольку нет Action: тега, то строку просто убрать.

Спасибо! А я слона то я и не заметил!:blush2:
 
Сверху Снизу