Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

2 страниц V   1 2

VIP PUBLIC (оптимизированный)

, Закачик плагина: intercs. Автор: Freedo.m
Статус пользователя trancer1
сообщение 8.2.2014, 9:39
Сообщение #21


Стаж: 13 лет

Сообщений: 344
Благодарностей: 88
Полезность: 221

Код:
				new iMoney = fm_get_user_money(id);
if(iMoney < MONEY_MIN_ADD) fm_set_user_money(id, iMoney + MONEY_NUM_ADD);
fm_give_item(id, "item_assaultsuit");
fm_give_item(id, "weapon_hegrenade");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_smokegrenade");
fm_give_item(id, "weapon_deagle");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");


как дописать в этот кусок drop_weapons(id, 2) ?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя winzh1
сообщение 8.2.2014, 10:05
Сообщение #22


Стаж: 14 лет

Сообщений: 1414
Благодарностей: 600
Полезность: 838

Цитата(trancer1 @ 8.2.2014, 14:39) *
Код:
				new iMoney = fm_get_user_money(id);
if(iMoney < MONEY_MIN_ADD) fm_set_user_money(id, iMoney + MONEY_NUM_ADD);
fm_give_item(id, "item_assaultsuit");
fm_give_item(id, "weapon_hegrenade");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_smokegrenade");
fm_give_item(id, "weapon_deagle");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");


как дописать в этот кусок drop_weapons(id, 2) ?

Да так прямо и дописать
Код:
new iMoney = fm_get_user_money(id);
if(iMoney < MONEY_MIN_ADD) fm_set_user_money(id, iMoney + MONEY_NUM_ADD);
drop_weapons(id, 2)
fm_give_item(id, "item_assaultsuit");
fm_give_item(id, "weapon_hegrenade");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_smokegrenade");
fm_give_item(id, "weapon_deagle");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");


Установлю и настрою FreshBans, DopBan.
Писать в ЛС.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя trancer1
сообщение 8.2.2014, 10:18
Сообщение #23


Стаж: 13 лет

Сообщений: 344
Благодарностей: 88
Полезность: 221

Цитата(winzh1 @ 8.2.2014, 12:05) *
Да так прямо и дописать
Код:
new iMoney = fm_get_user_money(id);
if(iMoney < MONEY_MIN_ADD) fm_set_user_money(id, iMoney + MONEY_NUM_ADD);
drop_weapons(id, 2)
fm_give_item(id, "item_assaultsuit");
fm_give_item(id, "weapon_hegrenade");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_smokegrenade");
fm_give_item(id, "weapon_deagle");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
так если бы все так просто было, я бы не спросил) ошибку пишет при компиляции

Код
error 017: undefined symbol "drop_weapons"


Отредактировал: trancer1, - 8.2.2014, 10:22
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя winzh1
сообщение 8.2.2014, 10:29
Сообщение #24


Стаж: 14 лет

Сообщений: 1414
Благодарностей: 600
Полезность: 838

Цитата(trancer1 @ 8.2.2014, 15:18) *
так если бы все так просто было, я бы не спросил) ошибку пишет при компиляции

Код
error 017: undefined symbol "drop_weapons"

А сток кто будет добавлять?
Код:
stock drop_weapons(id, dropwhat)
{
static weapons[32], num, i, weaponid
num = 0
get_user_weapons(id, weapons, num)

for (i = 0; i < num; i++)
{
weaponid = weapons[i]

if ((dropwhat == 1 && ((1<<weaponid) & PRIMARY_WEAPONS_BIT_SUM)) || (dropwhat == 2 && ((1<<weaponid) & SECONDARY_WEAPONS_BIT_SUM)))
{
static wname[32]
get_weaponname(weaponid, wname, sizeof wname - 1)
engclient_cmd(id, "drop", wname)
}
}
}

И добавить
Код:
const PRIMARY_WEAPONS_BIT_SUM = 
(1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<
CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90)
const SECONDARY_WEAPONS_BIT_SUM = (1<<CSW_P228)|(1<<CSW_ELITE)|(1<<CSW_FIVESEVEN)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_DEAGLE)


Установлю и настрою FreshBans, DopBan.
Писать в ЛС.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Predat0r
сообщение 8.2.2014, 10:52
Сообщение #25
Стаж: 14 лет

Сообщений: 1245
Благодарностей: 375
Полезность: < 0

Цитата(winzh1 @ 8.2.2014, 11:05) *
Код:
new iMoney = fm_get_user_money(id);
if(iMoney < MONEY_MIN_ADD) fm_set_user_money(id, iMoney + MONEY_NUM_ADD);
drop_weapons(id, 2)
fm_give_item(id, "item_assaultsuit");
fm_give_item(id, "weapon_hegrenade");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_smokegrenade");
fm_give_item(id, "weapon_deagle");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");

>>

И вообще лучше гив айтем заменить хотя бы циклом.

Код:

#define extra_offset_weapon 4
#define extra_offset_player 5
#define m_rgpPlayerItems_CBasePlayer 367

new Weapon
new iMoney = fm_get_user_money(id);
if(iMoney < MONEY_MIN_ADD) fm_set_user_money(id, iMoney + MONEY_NUM_ADD);
DropWeapons(Player, ExecuteHamB(Ham_Item_ItemSlot, Weapon));
fm_give_item(id, "item_assaultsuit");
fm_give_item(id, "weapon_hegrenade");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_smokegrenade");
fm_give_item(id, "weapon_deagle");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");

DropWeapons(const Player, const Slot)
{
new szWeaponName[32], Item = get_pdata_cbase(Player, m_rgpPlayerItems_CBasePlayer + Slot, extra_offset_player);

while (IsValidPev(Item))
{
pev(iItem, pev_classname, szWeaponName, charsmax(szWeaponName));
engclient_cmd(Player, "drop", szWeaponName);

Item = get_pdata_cbase(Item, m_pNext, extra_offset_weapon);
}
}



Отредактировал: Predat0r, - 8.2.2014, 11:08
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя trancer1
сообщение 8.2.2014, 11:53
Сообщение #26


Стаж: 13 лет

Сообщений: 344
Благодарностей: 88
Полезность: 221

все не то )
помогите плиз чтобы выбрасывало второй пистолет и все
Скрытый текст
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>

#pragma semicolon 1

#define MONEY_NUM_ADD 2500 // Сколько выдавать денег при спавне.
#define MONEY_MIN_ADD 8000 // Если у игрока на счету больше чем значение данного макроса, то ему выдаваться деньги не будут.

#define PDATA_SAFE 2
#define MSG_SAY_TEXT 76
#define m_iAccount 115

new g_iRoundNum, g_iMaxPlayers;

public plugin_init()
{
register_plugin("Vip public", "v0.1", "Freedo.m");
register_logevent("LogEvent_Restart", 2, "1=Game_Commencing", "1&Restart_Round_");
register_event("HLTV", "Event_HLTV", "a", "1=0", "2=0");
RegisterHam(Ham_Spawn, "player", "Ham_PlayerSpawn_Post", 1);
register_clcmd("say /vips", "ClCmd_Vips");
register_clcmd("say_team /vips", "ClCmd_Vips");
g_iMaxPlayers = get_maxplayers();
}

public LogEvent_Restart() g_iRoundNum = 0;
public Event_HLTV() g_iRoundNum++;

public Ham_PlayerSpawn_Post(id)
{
if(is_user_alive(id) && get_user_flags(id) & ADMIN_LEVEL_H)
{
switch(g_iRoundNum)
{
case 0: return;
case 1: return;
case 2:
{
fm_give_item(id, "item_assaultsuit");
PrintChat(id, "!g|Vip|!y У Вас есть статус !gVip!y. Со 2-го раунда выдаются бонусы!");
}
default:
{
new iMoney = fm_get_user_money(id);
if(iMoney < MONEY_MIN_ADD) fm_set_user_money(id, iMoney + MONEY_NUM_ADD);
fm_give_item(id, "item_assaultsuit");
fm_give_item(id, "weapon_hegrenade");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_smokegrenade");
drop_weapons(id, 2);
fm_give_item(id, "weapon_deagle");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_50ae");
}
}
}
}

public ClCmd_Vips(id)
{
new szMessage[256], szName[32], iNum;
formatex(szMessage, charsmax(szMessage), "!gVIP Online:!y");
for(new i = 1; i <= g_iMaxPlayers; i++)
{
if(is_user_connected(i) && (get_user_flags(i) & ADMIN_LEVEL_H))
{
iNum++;
get_user_name(i, szName, charsmax(szName));
formatex(szMessage, charsmax(szMessage), "%s %s,", szMessage, szName);
}
}
if(iNum == 0) formatex(szMessage, charsmax(szMessage), "!gVIP Online:!y нет !gVIP !yонлайн.");
PrintChat(id, "%s", szMessage);
return PLUGIN_HANDLED;
}

fm_get_user_money(id)
{
if(pev_valid(id) != PDATA_SAFE) return -1;
return get_pdata_int(id, m_iAccount);
}

fm_set_user_money(id, iNum)
{
if(pev_valid(id) != PDATA_SAFE) return 0;
set_pdata_int(id, m_iAccount, iNum);
return 1;
}

fm_give_item(id, const szItem[])
{
if(!equal(szItem, "weapon_", 7) && !equal(szItem, "ammo_", 5) && !equal(szItem, "item_", 5) && !equal(szItem, "tf_weapon_", 10)) return 0;
new iEntity = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, szItem));
if(!pev_valid(iEntity)) return 0;
new Float:fOrigin[3];
pev(id, pev_origin, fOrigin);
set_pev(iEntity, pev_origin, fOrigin);
set_pev(iEntity, pev_spawnflags, pev(iEntity, pev_spawnflags) | SF_NORESPAWN);
dllfunc(DLLFunc_Spawn, iEntity);
new iSolid = pev(iEntity, pev_solid);
dllfunc(DLLFunc_Touch, iEntity, id);
if(pev(iEntity, pev_solid) == iSolid)
{
engfunc(EngFunc_RemoveEntity, iEntity);
return -1;
}
return iEntity;
}

PrintChat(const id, const szMessage[], any:...)
{
if(!is_user_connected(id)) return;
new szBuffer[190];
vformat(szBuffer, charsmax(szBuffer), szMessage, 3);
while(replace(szBuffer, charsmax(szBuffer), "!y", "^1")) {}
while(replace(szBuffer, charsmax(szBuffer), "!t", "^3")) {}
while(replace(szBuffer, charsmax(szBuffer), "!g", "^4")) {}
message_begin(MSG_ONE, MSG_SAY_TEXT, _, id);
write_byte(id);
write_string(szBuffer);
message_end();
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
orchuk
сообщение 12.2.2014, 11:20
Сообщение #27
Стаж: 13 лет

Сообщений: 93
Благодарностей: 1
Полезность: 0

Если данный плагин будет обновляться то у меня есть предложение
Сделать файл куда вписывать карты на которых бонусные гранаты ну будут выдаваться
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ex3m777
сообщение 12.2.2014, 11:56
Сообщение #28


Стаж: 13 лет
Город: Москва

Сообщений: 2037
Благодарностей: 1135
Полезность: 968

Меценат Меценат

Цитата(orchuk @ 12.2.2014, 13:20) *
Если данный плагин будет обновляться то у меня есть предложение
Сделать файл куда вписывать карты на которых бонусные гранаты ну будут выдаваться

Можно сделать так.
План конечно бредовый но имеет право на жизнь)

создаем плагин vip_intercs2 с таким кодом

Код:
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>

#pragma semicolon 1

#define MONEY_NUM_ADD 2500 // Сколько выдавать денег при спавне.
#define MONEY_MIN_ADD 8000 // Если у игрока на счету больше чем значение данного макроса, то ему выдаваться деньги не будут.

#define PDATA_SAFE 2
#define MSG_SAY_TEXT 76
#define m_iAccount 115

new g_iRoundNum, g_iMaxPlayers;

public plugin_init()
{
register_plugin("Vip public", "v0.1", "Freedo.m");
register_logevent("LogEvent_Restart", 2, "1=Game_Commencing", "1&Restart_Round_");
register_event("HLTV", "Event_HLTV", "a", "1=0", "2=0");
RegisterHam(Ham_Spawn, "player", "Ham_PlayerSpawn_Post", 1);
register_clcmd("say /vips", "ClCmd_Vips");
register_clcmd("say_team /vips", "ClCmd_Vips");
g_iMaxPlayers = get_maxplayers();
}

public LogEvent_Restart() g_iRoundNum = 0;
public Event_HLTV() g_iRoundNum++;

public Ham_PlayerSpawn_Post(id)
{
if(is_user_alive(id) && get_user_flags(id) & ADMIN_LEVEL_H)
{
switch(g_iRoundNum)
{
case 0: return;
case 1: return;
case 2:
{
fm_give_item(id, "item_assaultsuit");
PrintChat(id, "!g|Vip|!y У Вас есть статус !gVip!y. Со 2-го раунда выдаются бонусы!");
}
default:
{
new iMoney = fm_get_user_money(id);
if(iMoney < MONEY_MIN_ADD) fm_set_user_money(id, iMoney + MONEY_NUM_ADD);
fm_give_item(id, "item_assaultsuit");
}
}
}
}

public ClCmd_Vips(id)
{
new szMessage[256], szName[32], iNum;
formatex(szMessage, charsmax(szMessage), "!gVIP Online:!y");
for(new i = 1; i <= g_iMaxPlayers; i++)
{
if(is_user_connected(i) && (get_user_flags(i) & ADMIN_LEVEL_H))
{
iNum++;
get_user_name(i, szName, charsmax(szName));
formatex(szMessage, charsmax(szMessage), "%s %s,", szMessage, szName);
}
}
if(iNum == 0) formatex(szMessage, charsmax(szMessage), "!gVIP Online:!y нет !gVIP !yонлайн.");
PrintChat(id, "%s", szMessage);
return PLUGIN_HANDLED;
}

fm_get_user_money(id)
{
if(pev_valid(id) != PDATA_SAFE) return -1;
return get_pdata_int(id, m_iAccount);
}

fm_set_user_money(id, iNum)
{
if(pev_valid(id) != PDATA_SAFE) return 0;
set_pdata_int(id, m_iAccount, iNum);
return 1;
}

fm_give_item(id, const szItem[])
{
if(!equal(szItem, "weapon_", 7) && !equal(szItem, "ammo_", 5) && !equal(szItem, "item_", 5) && !equal(szItem, "tf_weapon_", 10)) return 0;
new iEntity = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, szItem));
if(!pev_valid(iEntity)) return 0;
new Float:fOrigin[3];
pev(id, pev_origin, fOrigin);
set_pev(iEntity, pev_origin, fOrigin);
set_pev(iEntity, pev_spawnflags, pev(iEntity, pev_spawnflags) | SF_NORESPAWN);
dllfunc(DLLFunc_Spawn, iEntity);
new iSolid = pev(iEntity, pev_solid);
dllfunc(DLLFunc_Touch, iEntity, id);
if(pev(iEntity, pev_solid) == iSolid)
{
engfunc(EngFunc_RemoveEntity, iEntity);
return -1;
}
return iEntity;
}

PrintChat(const id, const szMessage[], any:...)
{
if(!is_user_connected(id)) return;
new szBuffer[190];
vformat(szBuffer, charsmax(szBuffer), szMessage, 3);
while(replace(szBuffer, charsmax(szBuffer), "!y", "^1")) {}
while(replace(szBuffer, charsmax(szBuffer), "!t", "^3")) {}
while(replace(szBuffer, charsmax(szBuffer), "!g", "^4")) {}
message_begin(MSG_ONE, MSG_SAY_TEXT, _, id);
write_byte(id);
write_string(szBuffer);
message_end();
}


и запускам его на тех картах которые тебе нужны в место стандартного плагина vip_intercs.amxx..) и гранаты даваться не будут

Отредактировал: grishka444, - 12.2.2014, 12:01


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
orchuk
сообщение 13.2.2014, 10:09
Сообщение #29
Стаж: 13 лет

Сообщений: 93
Благодарностей: 1
Полезность: 0

а как сделать чтобы деньги начислялись сразу ??
(деньги начисляются но их не видно) видно только после покупки оружия
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Sanlerus
сообщение 25.2.2014, 13:32
Сообщение #30


Стаж: 12 лет

Сообщений: 132
Благодарностей: 70
Полезность: 34

CODE
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>

#pragma semicolon 1

#define MONEY_NUM_ADD 2500 // Сколько выдавать денег при спавне.
#define MONEY_MIN_ADD 8000 // Если у игрока на счету больше чем значение данного макроса, то ему выдаваться деньги не будут.

#define PDATA_SAFE 2
#define MSG_SAY_TEXT 76
#define MsgId_Money 102
#define m_iAccount 115

new g_iRoundNum, g_iMaxPlayers;

public plugin_init()
{
register_plugin("Vip public", "v0.2", "Freedo.m");
register_logevent("LogEvent_Restart", 2, "1=Game_Commencing", "1&Restart_Round_");
register_event("HLTV", "Event_HLTV", "a", "1=0", "2=0");
RegisterHam(Ham_Spawn, "player", "Ham_PlayerSpawn_Post", 1);
register_clcmd("say /vips", "ClCmd_Vips");
register_clcmd("say_team /vips", "ClCmd_Vips");
g_iMaxPlayers = get_maxplayers();
}

public LogEvent_Restart() g_iRoundNum = 0;
public Event_HLTV() g_iRoundNum++;

public Ham_PlayerSpawn_Post(id)
{
if(is_user_alive(id) && get_user_flags(id) & ADMIN_LEVEL_H)
{
switch(g_iRoundNum)
{
case 0: return;
case 1: return;
case 2:
{
fm_give_item(id, "item_assaultsuit");
PrintChat(id, "!g|Vip|!y У Вас есть статус !gVip!y. Со 2-го раунда выдаются бонусы!");
}
default:
{
new iMoney = fm_get_user_money(id);
if(iMoney < MONEY_MIN_ADD) fm_set_user_money(id, iMoney + MONEY_NUM_ADD, 1);
fm_give_item(id, "item_assaultsuit");
fm_give_item(id, "weapon_hegrenade");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_flashbang");
fm_give_item(id, "weapon_smokegrenade");
}
}
}
}

public ClCmd_Vips(id)
{
new szMessage[256], szName[32], iNum;
formatex(szMessage, charsmax(szMessage), "!gVIP Online:!y");
for(new i = 1; i <= g_iMaxPlayers; i++)
{
if(is_user_connected(i) && (get_user_flags(i) & ADMIN_LEVEL_H))
{
iNum++;
get_user_name(i, szName, charsmax(szName));
formatex(szMessage, charsmax(szMessage), "%s %s,", szMessage, szName);
}
}
if(iNum == 0) formatex(szMessage, charsmax(szMessage), "!gVIP Online:!y нет !gVIP !yонлайн.");
PrintChat(id, "%s", szMessage);
return PLUGIN_HANDLED;
}

fm_get_user_money(id)
{
if(pev_valid(id) != PDATA_SAFE) return -1;
return get_pdata_int(id, m_iAccount);
}

fm_set_user_money(id, iNum, iFlash)
{
if(pev_valid(id) != PDATA_SAFE) return 0;
set_pdata_int(id, m_iAccount, iNum);
message_begin(MSG_ONE, MsgId_Money, _, id);
write_long(iNum);
write_byte(iFlash);
message_end();
return 1;
}

fm_give_item(id, const szItem[])
{
if(!equal(szItem, "weapon_", 7) && !equal(szItem, "ammo_", 5) && !equal(szItem, "item_", 5) && !equal(szItem, "tf_weapon_", 10)) return 0;
new iEntity = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, szItem));
if(!pev_valid(iEntity)) return 0;
new Float:fOrigin[3];
pev(id, pev_origin, fOrigin);
set_pev(iEntity, pev_origin, fOrigin);
set_pev(iEntity, pev_spawnflags, pev(iEntity, pev_spawnflags) | SF_NORESPAWN);
dllfunc(DLLFunc_Spawn, iEntity);
new iSolid = pev(iEntity, pev_solid);
dllfunc(DLLFunc_Touch, iEntity, id);
if(pev(iEntity, pev_solid) == iSolid)
{
engfunc(EngFunc_RemoveEntity, iEntity);
return -1;
}
return iEntity;
}

PrintChat(const id, const szMessage[], any:...)
{
if(!is_user_connected(id)) return;
new szBuffer[190];
vformat(szBuffer, charsmax(szBuffer), szMessage, 3);
while(replace(szBuffer, charsmax(szBuffer), "!y", "^1")) {}
while(replace(szBuffer, charsmax(szBuffer), "!t", "^3")) {}
while(replace(szBuffer, charsmax(szBuffer), "!g", "^4")) {}
message_begin(MSG_ONE, MSG_SAY_TEXT, _, id);
write_byte(id);
write_string(szBuffer);
message_end();
}

Фикс худа обновления денег.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Safety1st
сообщение 25.2.2014, 13:41
Сообщение #31
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

fm_set_user_money - разоптимизация. Тем более с отправкой месседжа (обновления денег). cs_set_user_money - 'оптимизированнее'.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Gorillaz
сообщение 16.3.2014, 16:39
Сообщение #32


Стаж: 12 лет

Сообщений: 260
Благодарностей: 78
Полезность: 223

Остается в уведомлениях исправить, что бонусы начисляются с 3-его раунда, а не со 2-ого.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ppcnoobec
сообщение 19.4.2014, 22:43
Сообщение #33
Стаж: 13 лет

Сообщений: 7
Благодарностей: 1
Полезность: 0

2500 бачей вообще лишнее,т.к. во раунде с авп бегать все випы будут
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
trollface
сообщение 19.4.2014, 22:53
Сообщение #34
Стаж: 12 лет

Сообщений: 1970
Благодарностей: 2423
Полезность: 0

Developer,
Freedo.m говорит примерно так: "Я стараюсь писать плагины с минимальным набором модулей. В большинстве случаев достаточно только amxmodx и fakemeta"
ps.gif На дату не посмотрел... fail

Отредактировал: trollface, - 19.4.2014, 22:54
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Villi
сообщение 1.6.2014, 20:03
Сообщение #35
Стаж: 12 лет

Сообщений: 28
Благодарностей: 1
Полезность: 28

Всем привет
Установил этот плагины на свой сервер, паблик, не работает.
VIP PUBLIC - Версия: v0.1 - (В консоле плагин работает, в логах чисто, в игре при наборе в чате /vips-Показывает кто вип, НО
не выдает денег + гранаты и броник, не показывает сообщение.
Подскажи пожалуйста в чем у меня может быт проблема?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Sanlerus
сообщение 1.6.2014, 20:14
Сообщение #36


Стаж: 12 лет

Сообщений: 132
Благодарностей: 70
Полезность: 34

Цитата(Safety1st @ 25.2.2014, 16:41) *
fm_set_user_money - разоптимизация. Тем более с отправкой месседжа (обновления денег). cs_set_user_money - 'оптимизированнее'.

Вообще-то cs_set_user_money делает тоже самое, потому что есть два типа денег, те что отображаются в худе и те на которые можно что-то купить, они сохраняются в пдате игрока. Так что это и не оптимизация, и не 'разоптимизация', а просто избавление от ненужного модуля ради 1 функции.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Sanlerus
сообщение 1.6.2014, 20:44
Сообщение #37


Стаж: 12 лет

Сообщений: 132
Благодарностей: 70
Полезность: 34

Ну вот, доказательство моих слов:
Код:
static cell AMX_NATIVE_CALL cs_set_user_money(AMX *amx, cell *params) // cs_set_user_money(index, money, flash = 1); = 3 arguments
{
// Give money to user
// params[1] = user
// params[2] = money
// params[3] = flash money?

// Check index
CHECK_PLAYER(params[1]);

// Fetch player pointer
edict_t *pPlayer = MF_GetPlayerEdict(params[1]);

// Give money
*((int *)pPlayer->pvPrivateData + OFFSET_CSMONEY) = params[2];

// Update display
MESSAGE_BEGIN(MSG_ONE, GET_USER_MSG_ID(PLID, "Money", NULL), NULL, pPlayer);
WRITE_LONG(params[2]);
WRITE_BYTE(params[3] ? 1 : 0); // if params[3] is 0, there will be no +/- flash of money in display...
MESSAGE_END();

return 1;
}

Я конечно уважаю Safety1st'a, но иногда он всё же пишет различные утверждения опираясь на воздух.

Отредактировал: Sanlerus, - 1.6.2014, 20:45
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Villi
сообщение 2.6.2014, 12:40
Сообщение #38
Стаж: 12 лет

Сообщений: 28
Благодарностей: 1
Полезность: 28

Все, нашел причину.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThePhoenix
сообщение 4.1.2015, 12:19
Сообщение #39


Стаж: 11 лет

Сообщений: 2723
Благодарностей: 533
Полезность: 40

За плагин отдельное спасибо.
Но нельзя ли допилить ограничение по картам что ли,как у Safety1st'a в "VIP_Seven" .Просто на многих картах,все гранаты,ой как не нужны будут.
То есть чтоб просто писало: "Привилегии на этой карте,отключены"
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
2 страниц V   1 2
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: