• Страница 1 из 2
  • 1
  • 2
  • »
Форум » Остальное » Флудильня » Помогите с плагином
Помогите с плагином
Дата: Суббота, 02.06.2018, 22:19 | Сообщение # 1
Дух ( Новичок )
Offline
  • Nadi
  • Репутация: 0
  • Сообщений:6
  • Пользователь
Ребята , нужно немного поправит плагин. Сделать что бы толькомогли брать випы с флагом t и только 1 раз за раунд

https://yadi.sk/d/surXsPGt3WukQo
Сообщение отредактировал Nadi - Суббота, 02.06.2018, 22:21
Дата: Суббота, 02.06.2018, 22:44 | Сообщение # 2
Forum Manager
Профи
Offline
  • Mandar1n
  • Репутация: 21
  • Сообщений:231
  • Модератор
  • Статус пользователя Помощь в личке - платная. Бесплатная только в темах.
Проверь(Исправлено)


Сообщение отредактировал Mandar1n - Воскресенье, 03.06.2018, 00:31
Дата: Суббота, 02.06.2018, 23:48 | Сообщение # 3
Silver Elite Master
Эксперт
Offline
  • EpisCape
  • Репутация: 50
  • Сообщений:50
  • Опытный Скриптер
  • Статус пользователя По любым вопросам:
    [vk.com/episcape0]
Mandar1n,
Первое, что бросается в глаза:
Код
bool: CanUse[32] = true

Во-первых, ТС не назвал сколько слотов у него на сервере, если у него их 32, то при обработке 32 игрока можно получить ошибку с выходом за пределы границы массива (но ты её не получишь из-за ошибки, которую ты допустил, о ней чуть ниже). Но на будущее: если плагин делается глобально для всех, а не только лично для твоего сервера, где известно количество слотов, то размер массива должен быть равен 33, ибо нумерация массива начинается с нуля, а слотов 32 (0 элемент не соответствует индексу и не обрабатывается, а ты теряешь 32 элемент массива, получая ошибку при правильной обработке (но правильной обработки у тебя нет, об этом ниже)).
Также стоит поменять логику алгоритма, не присваивать переменной с самого начала ничего, потому как павн инициализирует сам, присваивая переменной фолс (в данном случае, ибо переменная булевая), далее тебе стоило бы при единичном использовании присвоить переменной тру и проверять на тру, а не на фолс.

Далее.
Код
if(!(get_user_flags(id) & FLAG))

Отрицание функции заменяется отрицанием битности.
Код
if(~get_user_flags(id) & FLAG)

Далее.
Код
for(new id = 1; id < g_maxplayers; id++) CanUse [id]= true

При полной заполненности сервера игроками последний игрок не будет обработан. Потому как строгое "меньше" в условии нужно заменить на "меньше либо равно", чтобы обработать последнего игрока, индекс которого равен количеству слотов. Речь в самом начале об ошибке шла именно в этой части. Благодаря такой ошибке ты не получишь выход за пределы массива, как было сказано выше, из-за нестрогого условия, но последний игрок не будет обработан (при условии полной заполненности сервером).
Сообщение отредактировал EpisCape - Суббота, 02.06.2018, 23:52
Дата: Воскресенье, 03.06.2018, 00:19 | Сообщение # 4
Forum Manager
Профи
Offline
  • Mandar1n
  • Репутация: 21
  • Сообщений:231
  • Модератор
  • Статус пользователя Помощь в личке - платная. Бесплатная только в темах.
EpisCape, странно, я вроде 33 писал. А на счет остального, спс за пояснение)
Дата: Воскресенье, 03.06.2018, 01:33 | Сообщение # 5
Дух ( Новичок )
Offline
  • Nadi
  • Репутация: 0
  • Сообщений:6
  • Пользователь
Цитата Mandar1n ()
Проверь(Исправлено)

Спасибо! Все отлично работает!!!
Дата: Воскресенье, 03.06.2018, 01:56 | Сообщение # 6
Silver Elite Master
Эксперт
Offline
  • EpisCape
  • Репутация: 50
  • Сообщений:50
  • Опытный Скриптер
  • Статус пользователя По любым вопросам:
    [vk.com/episcape0]
Mandar1n, сам автор плагина допустил такую же ошибку, кстати говоря, при объявлении булевой. Может, ты, взглянув на неё, увидел размер в 32 байта и при объявлении массива поставил такой же размер, вот и не заметил.
Дата: Воскресенье, 03.06.2018, 11:13 | Сообщение # 7
Любитель
Offline
  • DaNGeRouS
  • Репутация: 1
  • Сообщений:29
  • Пользователь
Помогите пожалуйста найти плагин пушки с ракетами

Добавлено (03.06.2018, 11:13)
---------------------------------------------
кОМУ надо плагины пшите мне попытаюсь найти

Дата: Воскресенье, 03.06.2018, 14:25 | Сообщение # 8
Forum Manager
Профи
Offline
  • Mandar1n
  • Репутация: 21
  • Сообщений:231
  • Модератор
  • Статус пользователя Помощь в личке - платная. Бесплатная только в темах.
EpisCape, Кстати, да) Я увидел немного выше в коде 32 и сам машинально поставил 32)

Добавлено (03.06.2018, 14:25)
---------------------------------------------
Nadi, Если хочешь, можешь изменить репутацию (зеленый палец вверх)

Дата: Понедельник, 11.06.2018, 18:15 | Сообщение # 9
Любитель
Offline
  • DaNGeRouS
  • Репутация: 1
  • Сообщений:29
  • Пользователь
Здравствуйте кто-нибудь сможет помочь с плагином мне нужно чтоб пушку можно было прокачивать до 4 левела всем людям с обычным доступом
И заранее извините за то что я кинул сам плагин просто нет исходника

Добавлено (11.06.2018, 18:15)
---------------------------------------------
https://yadi.sk/d/pIX42Y3o3Xm3To вот ссылка я просто не знаю как что делать вот и скинул ссылку на плагин

Дата: Воскресенье, 24.06.2018, 20:06 | Сообщение # 10
Друг XP
Профи
Offline
  • sklin
  • Репутация: 41
  • Сообщений:181
  • VIP
  • Статус пользователя 46.174.48.44:27203
ребят помогите пожайлуста!!
в общем нашёл я плагин Бесконечные патроны который можно покупать за определённую внутри игровую сумму но проблема в том что после смерти бесконечные патроны остаются..

кто шарит в скриптах помогите плиз!!!
вот исходник   https://yadi.sk/d/5_4HaUXZ3YLFSs
Сообщение отредактировал sklin - Воскресенье, 24.06.2018, 20:06
Дата: Воскресенье, 24.06.2018, 20:30 | Сообщение # 11
Forum Manager
Профи
Offline
  • Mandar1n
  • Репутация: 21
  • Сообщений:231
  • Модератор
  • Статус пользователя Помощь в личке - платная. Бесплатная только в темах.
sklin

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

#define PLUGIN "Unlimited Weapon Clip"
#define AUTHOR "ConnorMcLeod"
#define VERSION "0.0.1"

#define CANT_RELOAD_BITSUM   ((1<<CSW_HEGRENADE)|(1<<CSW_SMOKEGRENADE)|(1<<CSW_FLASHBANG)|(1<<CSW_KNIFE)|(1<<CSW_C4))

new g_bAdmin[33]

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

   register_event("CurWeapon", "Event_CurWeapon", "be", "1!0");
   register_event( "DeathMsg", "Hook_DeathMessage", "a" );
   register_clcmd("say /buyz", "kkekc");
}

public client_putinserver(id)   g_bAdmin [id]= false;

public Hook_DeathMessage()   
{
   new iVictim = read_data(2);
   g_bAdmin [iVictim]= false
}
public Event_CurWeapon(id)
{
   if( !g_bAdmin [id]|| CANT_RELOAD_BITSUM & (1<<read_data(2)) || read_data(3) > 1 )   return

   set_pdata_int(get_pdata_cbase(id, 373), 51, 100, 4)
}

public kkekc(id)
{
   if(!is_user_alive(id))   return;
   if(cs_get_user_money(id) < 400)   return; cs_set_user_money(id, cs_get_user_money(id) - 400);
   g_bAdmin [id]= true;
}
Дата: Воскресенье, 24.06.2018, 20:48 | Сообщение # 12
Друг XP
Профи
Offline
  • sklin
  • Репутация: 41
  • Сообщений:181
  • VIP
  • Статус пользователя 46.174.48.44:27203
спасибо большое)
Сообщение отредактировал sklin - Воскресенье, 24.06.2018, 20:55
Дата: Воскресенье, 24.06.2018, 22:56 | Сообщение # 13
Forum Manager
Профи
Offline
  • Mandar1n
  • Репутация: 21
  • Сообщений:231
  • Модератор
  • Статус пользователя Помощь в личке - платная. Бесплатная только в темах.
sklin, спасибо в репутацию не положишь xD
Дата: Воскресенье, 24.06.2018, 23:24 | Сообщение # 14
Друг XP
Профи
Offline
  • sklin
  • Репутация: 41
  • Сообщений:181
  • VIP
  • Статус пользователя 46.174.48.44:27203
Цитата Mandar1n ()
спасибо в репутацию не положишь xD
Намёк понял xD
Дата: Вторник, 26.06.2018, 20:23 | Сообщение # 15
Любитель
Offline
  • tehmast3r
  • Репутация: 0
  • Сообщений:27
  • Пользователь
  • Статус пользователя Буст Званий CSGO
Цитата Mandar1n ()
sklin, спасибо в репутацию не положишь xD
xD вымогатель
Форум » Остальное » Флудильня » Помогите с плагином
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:
(threadpage)