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

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

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

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

Плагин Gifts ( Поправить )

Статус пользователя qpi3ik
сообщение 20.12.2014, 15:43
Сообщение #1


Стаж: 12 лет

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

Доброе время суток уважаемые скриптеры!
Есть плагин Gifts
Нашел в нем баг. Сохраняю подарки на карте меняю на другую сохраняю на второй. В итоге на первой карте подарков нет, но кординаты в файле есть. А на второй есть.
Кто может исправить баг с сохранением подарков?

Описание:
Плагин Gifts создает подарки на определенных координатах по карте. Подарки появляются случайным образом через определенный промежуток времени. Что входит в плагин:

15 моделей подарочных коробок в одной файле
Награда за собранный подарок (деньги, hp, гравитация, бесшумный бег, скорость, гранаты)
Удобное меню для размещения подарков
Координаты подарков сохраняются в отдельном текстовом файле. Не нужно каждый раз размещать коробки на карте
Ограничение для игроков за кол-во собранных подарков действует даже после их реконнекта.

Источник
http://next21.ru/2013/01/%D0%BF%D0%BB%D0%B0%D0%B3%D0%B8%D0%BD-%D0%BF%D0%BE%D0%B4%D0%B0%D1%80%D0%BA%D0%B8/



На сайте кривая кодировка исходника вот с нормально кодировкой.

Исходник
Код:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta_util>
#include <hamsandwich>
#include <fun>
#include <WPMGPrintChatColor>

#define PLUGIN "Gifts"
#define VERSION "0.8.1"
#define AUTHOR "Psycrow"

#define is_entity_player(%1) (1<=%1<=g_maxPlayers)
#define PRESENT_CLASSNAME "next21_gift"
#define pev_lifes pev_euser1

#define MODEL_PRESENT "models/next21_knife_v2/presents/presents.mdl"
#define MODEL_SKINS 3
#define MODEL_SUBMODELS 5

#define MAX_MONEY 16000 // Максимальное кол-во денег у игрока

#if cellbits == 32
#define OFFSET_CSMONEY 115
#else
#define OFFSET_CSMONEY 140
#endif

new
g_msgMoney,
g_infoTarget,
g_maxPlayers,
g_menuId = -1,
bool: g_registration,
g_totalGifts, //Кол-во загруженных подарков на карте
g_get_round_times[33], //Сколько раз игрок поднял подарков за раунд
g_get_game_times[33], //Сколько раз игрок поднял подарков за игру
g_disconnections, //Сколько игроков покинуло сервер
bool: g_have_speed[33], //Имеет ли игрок добавленную скорость
bool: g_have_gravity[33], //Имеет ли игрок добавленную гравитацию
bool: g_have_sw[33], //Имеет ли игрок заглушенные шаги
bool: g_save_cpl, //Изменения в расположении подарков
Float: g_massage_rate[33], //Ограничение оповещений о попытке собрать подарок ограниченному игроку

Array:g_gift_id, //Индексы подарков
Array:g_gift_x,
Array:g_gift_y,
Array:g_gift_z,
Array:g_plr_steamid,
Array:g_plr_times


public plugin_precache()
{
precache_model(MODEL_PRESENT)
}

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)

register_cvar("cv_gift_access","a") // Флаг доступа к меню
register_cvar("cv_gift_money_min","1000") // Минимальная награда за собрынный подарок
register_cvar("cv_gift_money_max","5000") // Максимальная награда за собрынный подарок
register_cvar("cv_gift_silent_walk","1") // Добавить ли в подарки бесшумный бег
register_cvar("cv_gift_gravitation","0.5") // Значение гравитации. 0.0 - убрать такой вид подарка
register_cvar("cv_gift_speed","300.0") // Значение скорости. 0.0 - убрать такой вид подарка
register_cvar("cv_gift_HE","2") // Сколько HE гранат можно получить в подарках. 0 - убрать такой вид подарка
register_cvar("cv_gift_health","50") // Сколько HP можно получить в подарках. 0 - убрать такой вид подарка
register_cvar("cv_gift_timerate","120.0") // Сколько секунд до появление подарка
register_cvar("cv_gift_get_times_round","3") // Сколько максимум можно собрать подарков за раундов. 0 - снимает ограничение
register_cvar("cv_gift_get_times_game","0") // Сколько максимум можно собрать подарков за игру (карту). 0 - снимает ограничение
register_cvar("cv_gift_lifes","0") // Сколько раз может появиться подарок в одном и том же месте (0 - неограниченно, 1 - после сбора больше не появляеться...)

register_clcmd("say /gift", "gift_menu")
register_clcmd("say_team /gift", "gift_menu" )
register_clcmd("say /gifts", "gift_menu" )
register_clcmd("say_team /gifts", "gift_menu" )

g_infoTarget = engfunc(EngFunc_AllocString, "info_target")
}

public plugin_cfg()
{
new map[32]
get_mapname(map, charsmax(map))
formatex(map, charsmax(map),"%s.ini",map)

new cfgDir[64], iDir, iFile[128]
get_configsdir(cfgDir, charsmax(cfgDir))
formatex(cfgDir, charsmax(cfgDir), "%s/next21_gifts", cfgDir)

iDir = open_dir(cfgDir, iFile, charsmax(iFile))

if(iDir)
{
while(next_file(iDir, iFile, charsmax(iFile)))
{
if (iFile[0] == '.')
continue

if(equal(map, iFile))
{
format(iFile, 128, "%s/%s", cfgDir, iFile)
get_gifts(iFile)
break
}
}
}
else server_print("[%s] Gifts was not loaded", PLUGIN)
}

public client_putinserver(id)
{
if(!g_registration) return

if(get_cvar_num("cv_gift_get_times_game"))
{
new steamId[32], arraySteamId[32]
get_user_authid(id, steamId, 31)

for(new i = 0; i < g_disconnections; i++)
{
ArrayGetString(g_plr_steamid, i, arraySteamId, 31)
if(equal(steamId, arraySteamId))
{
g_get_game_times[id] = ArrayGetCell(g_plr_times, i)
return
}
}
g_get_game_times[id] = 0
}
}

public client_disconnect(id)
{
if(!g_registration) return

if(get_cvar_num("cv_gift_get_times_game"))
{
new steamId[32], arraySteamId[32]
get_user_authid(id, steamId, 31)

for(new i = 0; i < g_disconnections; i++)
{
ArrayGetString(g_plr_steamid, i, arraySteamId, 31)
if(equal(steamId, arraySteamId))
{
ArraySetCell(g_plr_times, i, g_get_game_times[id])
return
}
}

ArrayPushString(g_plr_steamid, steamId)
ArrayPushCell(g_plr_times, g_get_game_times[id])
g_disconnections++
}
}

public fw_PlayerSpawn(id)
{
if(g_have_gravity[id])
{
set_user_gravity(id)
g_have_gravity[id] = false
}

if(g_have_sw[id])
{
set_user_footsteps(id, 0)
g_have_sw[id] = false
}

g_have_speed[id] = false
}

public CurWeapon(id)
{
if(g_have_speed[id])
set_user_maxspeed(id, get_cvar_float("cv_gift_speed"))
}

public fw_RoundStart()
{
for(new i = 1; i <= g_maxPlayers; i++)
g_get_round_times[i] = 0

new lifes = get_cvar_num("cv_gift_lifes")
if(lifes)
{
new ent
while((ent = fm_find_ent_by_class(ent, PRESENT_CLASSNAME)))
set_pev(ent, pev_lifes, lifes)
}
}

public fw_TouchGift(ent, id)
{
if(!is_entity_player(id))
return

if(g_massage_rate[id] > get_gametime() || !is_user_alive(id) || !pev_valid(ent))
return

static className[32]
pev(ent, pev_classname, className, 31)
if(!equal(className, PRESENT_CLASSNAME))
return

new times = get_cvar_num("cv_gift_get_times_round")
if(times && g_get_round_times[id] >= times)
{
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы привысили лимит сбора подарков за раунд", PLUGIN)
g_massage_rate[id] = get_gametime() + 3.0
return
}

times = get_cvar_num("cv_gift_get_times_game")
if(times && g_get_game_times[id] >= times)
{
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы привысили лимит сбора подарков за игру", PLUGIN)
g_massage_rate[id] = get_gametime() + 3.0
return
}

engfunc(EngFunc_SetModel, ent, MODEL_PRESENT)
set_pev(ent, pev_skin, random_num(0, MODEL_SKINS - 1))
set_pev(ent, pev_body, random_num(0, MODEL_SUBMODELS - 1))

hide_gift(ent)
give_gift(id)

if(get_cvar_num("cv_gift_get_times_game")) g_get_game_times[id]++
if(get_cvar_num("cv_gift_get_times_round")) g_get_round_times[id]++
if(get_cvar_num("cv_gift_lifes")) set_pev(ent, pev_lifes, pev(ent, pev_lifes) - 1)
}

public set_gift()
{
if(!g_totalGifts) return

new valid_gifts_count = 0
new ent, lifes_active = get_cvar_num("cv_gift_lifes")
while((ent = fm_find_ent_by_class(ent, PRESENT_CLASSNAME)))
{
if(pev(ent, pev_solid) != SOLID_NOT || (lifes_active && !pev(ent, pev_lifes)))
valid_gifts_count++
}

if(valid_gifts_count == g_totalGifts) return

new bool: check = false, id
while(check == false)
{
id = random_num(0, g_totalGifts - 1)
ent = ArrayGetCell(g_gift_id ,id)
if(pev(ent, pev_solid) == SOLID_NOT && (!lifes_active || pev(ent, pev_lifes)))
{
set_pev(ent, pev_solid, SOLID_TRIGGER)
unhide_gift(ent)
check = true
}
}
}

public gift_menu(id)
{
if(!is_user_access(id))
{
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tУ вас нет прав на эту функцию", PLUGIN)
return
}

new menu_name[90]
format(menu_name, 89, "\rРасстановка подарков^n\dТекущий подарок: %d", g_totalGifts + 1)

g_menuId = menu_create(menu_name, "menu_handler")

menu_additem(g_menuId, "\wУстановить Подарок", "1", 0)

if(!g_totalGifts)
{
menu_additem(g_menuId, "\dУдалить предыдущий Подарок", "2", 0)
menu_additem(g_menuId, "\dУдалить все Подарки", "3", 0)
}
else
{
menu_additem(g_menuId, "\wУдалить предыдущий Подарок", "2", 0)
menu_additem(g_menuId, "\wУдалить все Подарки", "3", 0)
}

if(!g_save_cpl)
menu_additem(g_menuId, "\dСохранить изменения", "4", 0)
else menu_additem(g_menuId, "\wСохранить изменения", "4", 0)

menu_setprop(g_menuId, MPROP_EXIT, MEXIT_ALL)
menu_setprop(g_menuId, MPROP_EXITNAME, "\yВыход")
menu_display(id, g_menuId, 0)

new keys
get_user_menu(id, g_menuId, keys)

for(new i = 0; i < g_totalGifts; i++)
unhide_gift(ArrayGetCell(g_gift_id, i))
}

public menu_handler(id, menu, item)
{
if(item == MENU_EXIT)
{
new ent
for(new i = 0; i < g_totalGifts; i++)
{
ent = ArrayGetCell(g_gift_id, i)
if(pev(ent, pev_solid) == SOLID_NOT) hide_gift(ent)
}

menu_destroy(menu)
return PLUGIN_HANDLED
}

switch(item)
{
case 0:
{
new Float:fOrigin[3]
fm_get_aim_origin(id, fOrigin)

if(create_gift(fOrigin))
g_save_cpl = true

menu_destroy(menu)
gift_menu(id)
}
case 1:
{
if(!g_totalGifts)
{
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tНа карте нет Подарков", PLUGIN)
menu_destroy(menu)
gift_menu(id)
return PLUGIN_HANDLED
}

g_save_cpl = true
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tПодарок удален", PLUGIN)


g_totalGifts--
engfunc(EngFunc_RemoveEntity, ArrayGetCell(g_gift_id, g_totalGifts))
ArrayDeleteItem(g_gift_id, g_totalGifts)
ArrayDeleteItem(g_gift_x, g_totalGifts)
ArrayDeleteItem(g_gift_y, g_totalGifts)
ArrayDeleteItem(g_gift_z, g_totalGifts)

menu_destroy(menu)
gift_menu(id)
}
case 2:
{
if(!g_totalGifts)
{
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tНа карте нет Подарков", PLUGIN)
menu_destroy(menu)
gift_menu(id)
return PLUGIN_HANDLED
}

g_save_cpl = true
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tБыло удалено !g%d !tПодарков", PLUGIN, g_totalGifts)

new ent
while((ent = fm_find_ent_by_class(ent, PRESENT_CLASSNAME)))
engfunc(EngFunc_RemoveEntity, ent)

g_totalGifts = 0

ArrayClear(g_gift_id)
ArrayClear(g_gift_x)
ArrayClear(g_gift_y)
ArrayClear(g_gift_z)

menu_destroy(menu)
gift_menu(id)

}
case 3:
{
if(!g_save_cpl)
{
menu_destroy(menu)
gift_menu(id)
return PLUGIN_HANDLED
}

g_save_cpl = false

PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !t%s", PLUGIN, save_gifts() ? "Сохранено" : "Не сохранено")

menu_destroy(menu)
gift_menu(id)
}
}
return PLUGIN_HANDLED
}

bool: save_gifts()
{
new map[32]
get_mapname(map, charsmax(map))
formatex(map, charsmax(map), "%s.ini", map)

new cfgDir[64], iFile[128]
get_configsdir(cfgDir, charsmax(cfgDir))
formatex(cfgDir, charsmax(cfgDir), "%s/next21_gifts", cfgDir)
formatex(iFile, charsmax(iFile), "%s/%s", cfgDir, map)

if(!dir_exists(cfgDir))
if(!mkdir(cfgDir))
return false

delete_file(iFile)

if(!g_totalGifts)
return true

for(new i = 0; i < g_totalGifts; i++)
{
new text[128], Float:fOrigin[3], ent = ArrayGetCell(g_gift_id, i)
pev(ent, pev_origin, fOrigin)
format(text, charsmax(text),"^"%f^" ^"%f^" ^"%f^"",fOrigin[0], fOrigin[1], fOrigin[2])
write_file(iFile, text, i)
}

return true
}

get_gifts(const iFile[128])
{
new file = fopen(iFile, "rt")

if(!file)
{
server_print("[%s] Gifts was not loaded", PLUGIN)
return
}

while(file && !feof(file))
{
new sfLineData[512]
fgets(file, sfLineData, charsmax(sfLineData))

if(sfLineData[0] == ';')
continue

if(equal(sfLineData, ""))
continue

new origins[3][32], Float: fOrigin[3]
parse(sfLineData, origins[0], 31, origins[1], 31, origins[2], 31)

fOrigin[0] = str_to_float(origins[0])
fOrigin[1] = str_to_float(origins[1])
fOrigin[2] = str_to_float(origins[2])

create_gift(fOrigin)
}

fclose(file)

if(!g_totalGifts)
server_print("[%s] Gifts was not loaded", PLUGIN)
else if(g_totalGifts == 1)
server_print("[%s] Loaded one gift", PLUGIN)
else
server_print("[%s] Loaded %d gifts", PLUGIN, g_totalGifts)
}

bool: create_gift(const Float: fOrigin[3])
{
new ent = engfunc(EngFunc_CreateNamedEntity, g_infoTarget)
if(!pev_valid(ent)) return false

if(!g_registration)
{
register_event("CurWeapon", "CurWeapon", "be","1=1")
register_event("HLTV", "fw_RoundStart", "a", "1=0", "2=0")

RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn", 1)
RegisterHamFromEntity(Ham_Touch, ent, "fw_TouchGift")

set_task(get_cvar_float("cv_gift_timerate"), "set_gift", _, _, _, "b")

g_gift_id = ArrayCreate()
g_gift_x = ArrayCreate()
g_gift_y = ArrayCreate()
g_gift_z = ArrayCreate()

if(get_cvar_num("cv_gift_get_times_game"))
{
g_plr_steamid = ArrayCreate(32)
g_plr_times = ArrayCreate(32)
}

g_maxPlayers = get_maxplayers()
g_msgMoney = get_user_msgid("Money")

g_registration = true

fw_RoundStart()
}

ArrayPushCell(g_gift_id, ent)

ArrayPushCell(g_gift_x, fOrigin[0])
ArrayPushCell(g_gift_y, fOrigin[1])
ArrayPushCell(g_gift_z, fOrigin[2])

engfunc(EngFunc_SetModel, ent, MODEL_PRESENT)
set_pev(ent, pev_origin, fOrigin)
set_pev(ent, pev_solid, SOLID_NOT)
set_pev(ent, pev_movetype, MOVETYPE_FLY)
set_pev(ent, pev_gravity, 1.0)
set_pev(ent, pev_classname, PRESENT_CLASSNAME)
set_pev(ent, pev_skin, random_num(0, MODEL_SKINS - 1))
set_pev(ent, pev_body, random_num(0, MODEL_SUBMODELS - 1))
engfunc(EngFunc_SetSize, ent, Float:{-15.0, -15.0, 0.0}, Float:{15.0, 15.0, 30.0})

hide_gift(ent)

g_totalGifts++

return true
}

hide_gift(ent)
{
set_pev(ent, pev_solid, SOLID_NOT)
for(new i = 1; i <= g_maxPlayers; i++)
{
new mid, keys
get_user_menu(i, mid, keys)
if(mid == g_menuId)
{
fm_set_rendering(ent, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 150)
return
}
}
fm_set_rendering(ent, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 0)
}

unhide_gift(ent)
{
if(pev(ent, pev_solid) == SOLID_NOT)
fm_set_rendering(ent, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 150)
else
fm_set_rendering(ent, kRenderFxGlowShell, random_num(0,255), random_num(0,255), random_num(0,255), kRenderNormal, 15)
}

give_gift(id) //Выдает случайный бонус с подарка. Добавьте case, если хотите доавить свой.
{
static loopDestroy
loopDestroy++

if(loopDestroy > 20)
{
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tПодарок оказался пустым", PLUGIN)
loopDestroy = 0
return
}

new max_random_gift = 6//Сколько видов бонусов в подарках
switch(random_num(1, max_random_gift))
{
case 1:
{
new reward = random_num(get_cvar_num("cv_gift_money_min"), get_cvar_num("cv_gift_money_max"))
new curr_money = get_pdata_int(id, OFFSET_CSMONEY)
if(curr_money + reward > MAX_MONEY)
reward = MAX_MONEY - curr_money

if(reward)
{
set_pdata_int(id, OFFSET_CSMONEY, curr_money + reward)

message_begin(MSG_ONE, g_msgMoney, _, id)
write_long(curr_money + reward)
write_byte(1)
message_end()

PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы получаете !g%d$", PLUGIN, reward)
loopDestroy = 0
}
else give_gift(id)
}

case 2:
{
if(!g_have_sw[id] && !get_user_footsteps(id) && get_cvar_num("cv_gift_silent_walk"))
{
g_have_sw[id] = true
set_user_footsteps(id)
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы получаете !gбесшумный бег", PLUGIN)
loopDestroy = 0
}
else give_gift(id)
}

case 3:
{
new Float: gravity = get_cvar_float("cv_gift_gravitation")
if(!g_have_gravity[id] && get_user_gravity(id) > gravity && gravity)
{
g_have_gravity[id] = true
set_user_gravity(id, gravity)
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы получаете !gгравитацию", PLUGIN)
loopDestroy = 0
}
else give_gift(id)
}

case 4:
{
new Float: speed = get_cvar_float("cv_gift_speed")
if(!g_have_speed[id] && get_user_maxspeed(id) < speed && speed)
{
g_have_speed[id] = true
set_user_maxspeed(id, speed)
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы получаете !gскорость", PLUGIN)
loopDestroy = 0
}
else give_gift(id)
}

case 5:
{
new hes = get_cvar_num("cv_gift_HE")
if(hes)
{
if(!user_has_weapon(id, CSW_HEGRENADE))
{
fm_give_item(id, "weapon_hegrenade")
cs_set_user_bpammo(id, CSW_HEGRENADE, hes)
}
else cs_set_user_bpammo(id, CSW_HEGRENADE, cs_get_user_bpammo(id, CSW_HEGRENADE) + hes)

PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы получаете !gкомплект гранат (%d HE)", PLUGIN, hes)
loopDestroy = 0
}
else give_gift(id)
}

case 6:
{
new hp = get_cvar_num("cv_gift_health")
if(hp)
{
fm_set_user_health(id, pev(id, pev_health) + hp)
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы получаете !gздоровье (%d hp)", PLUGIN, hp)
loopDestroy = 0
}
else give_gift(id)
}
//case 7: тут по примерам выше
}
}

bool: is_user_access(id)
{
new flag_access[24]
get_cvar_string("cv_gift_access", flag_access, charsmax(flag_access))

new flags = get_user_flags(id)

if(contain(flag_access, "a") > -1 && (flags & ADMIN_IMMUNITY))
return true

if(contain(flag_access, "b") > -1 && (flags & ADMIN_RESERVATION))
return true

if(contain(flag_access, "c") > -1 && (flags & ADMIN_KICK))
return true

if(contain(flag_access, "d") > -1 && (flags & ADMIN_BAN))
return true

if(contain(flag_access, "e") > -1 && (flags & ADMIN_SLAY))
return true

if(contain(flag_access, "f") > -1 && (flags & ADMIN_MAP))
return true

if(contain(flag_access, "g") > -1 && (flags & ADMIN_CVAR))
return true

if(contain(flag_access, "h") > -1 && (flags & ADMIN_CFG))
return true

if(contain(flag_access, "i") > -1 && (flags & ADMIN_CHAT))
return true

if(contain(flag_access, "j") > -1 && (flags & ADMIN_VOTE))
return true

if(contain(flag_access, "k") > -1 && (flags & ADMIN_PASSWORD))
return true

if(contain(flag_access, "l") > -1 && (flags & ADMIN_RCON))
return true

if(contain(flag_access, "m") > -1 && (flags & ADMIN_LEVEL_A))
return true

if(contain(flag_access, "n") > -1 && (flags & ADMIN_LEVEL_B))
return true

if(contain(flag_access, "o") > -1 && (flags & ADMIN_LEVEL_C))
return true

if(contain(flag_access, "p") > -1 && (flags & ADMIN_LEVEL_D))
return true

if(contain(flag_access, "q") > -1 && (flags & ADMIN_LEVEL_E))
return true

if(contain(flag_access, "r") > -1 && (flags & ADMIN_LEVEL_F))
return true

if(contain(flag_access, "s") > -1 && (flags & ADMIN_LEVEL_G))
return true

if(contain(flag_access, "t") > -1 && (flags & ADMIN_LEVEL_H))
return true

if(contain(flag_access, "u") > -1 && (flags & ADMIN_MENU))
return true

if(contain(flag_access, "y") > -1 && (flags & ADMIN_ADMIN))
return true

if(contain(flag_access, "z") > -1 && (flags & ADMIN_USER))
return true

return false
}

Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя qpi3ik
сообщение 21.12.2014, 0:52
Сообщение #2


Стаж: 12 лет

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

Проблема возникает только на карте de_dust2_2x2. На остальных все в порядке вроде)
Помогите решить проблему на этой карте.
Конфиг с кординатами есть а вот подарков нет(
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя strelok93
сообщение 21.12.2014, 1:18
Сообщение #3


Стаж: 12 лет

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

Цитата(qpi3ik @ 21.12.2014, 0:48) *
Проблема возникает только на карте de_dust2_2x2. На остальных все в порядке вроде)
Помогите решить проблему на этой карте.
Конфиг с кординатами есть а вот подарков нет(

Хехехе) такая же проблема была! Лично мне помогло вот что:
удаляешь плагин с серва, особенно папку с координатами, закрываешь фтп и ресаешь серв.
Ставишь плагин заново, в папке configs создаешь САМ папку куда будут сохранятся координаты подарков, вроде next21_gifts
Затем тыкаешь на нее правой кнопкой мышки, и меняешь права доступа к файлу на 777
опять рестарт, и ставишь подарки.
ps.gif На 2ух серверах была такая проблема, на 1ом удалось разрешить таким методом, на другом не удалось sad.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qpi3ik
сообщение 21.12.2014, 1:28
Сообщение #4


Стаж: 12 лет

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

Скрытый текст
Цитата(strelok93 @ 21.12.2014, 2:14) *
Хехехе) такая же проблема была! Лично мне помогло вот что:
удаляешь плагин с серва, особенно папку с координатами, закрываешь фтп и ресаешь серв.
Ставишь плагин заново, в папке configs создаешь САМ папку куда будут сохранятся координаты подарков, вроде next21_gifts
Затем тыкаешь на нее правой кнопкой мышки, и меняешь права доступа к файлу на 777
опять рестарт, и ставишь подарки.
ps.gif На 2ух серверах была такая проблема, на 1ом удалось разрешить таким методом, на другом не удалось sad.gif


Спасибо конечно. Но не помогло(
Не знаю но какой то баг с этой картой и ппц
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя strelok93
сообщение 21.12.2014, 1:33
Сообщение #5


Стаж: 12 лет

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

Цитата(qpi3ik @ 21.12.2014, 1:24) *
[spoiler=Скрытый текст][/spoiler]

Спасибо конечно. Но не помогло(
Не знаю но какой то баг с этой картой и ппц

у меня не только с этой было, еще с некоторыми. Думаю все таки может плагин такой... Попробую попросить кого нибудь его починить
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: