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

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

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

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

Ошибка при онлайн и локальной компиляции плагина

, Хелп
Статус пользователя demoleridon
сообщение 29.1.2020, 15:10
Сообщение #1
Стаж: 6 лет 5 месяцев

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

Плагин комбо спрайты.
выдает ошибку при компиляции
и локально и онлайн
помогите пожалуйста


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


#define EF_OWNER_VISIBILITY (1<<12) // visibility for owner
// added https://github.com/s1lentq/ReGameDLL_CS/com...314a4a98d3bc1d5



public plugin_precache() {
precache_model(COMBO_SPRITE)
}

public plugin_init()
{
register_plugin("Combo On Kill", PL_VERSION, "Vaqtincha")

RegisterHookChain(RG_CSGameRules_DeathNotice, "CSGameRules_DeathNotice", .post = true)
RegisterHookChain(RG_CSGameRules_RestartRound, "CSGameRules_RestartRound", .post = true)
}

public CSGameRules_RestartRound()
{
new pSpriteEntity = NULLENT

while((pSpriteEntity = rg_find_ent_by_class(pSpriteEntity, "env_sprite")))
{
if (get_entvar(pSpriteEntity, var_owner) > 0) {
RemoveSprite(pSpriteEntity)
}
}
}

public CSGameRules_DeathNotice(const pPlayer, const pKiller, const pevInflictor)
{
if (pPlayer == pKiller || !is_user_connected(pKiller) || is_user_bot(pKiller))
return HC_CONTINUE

static Float:flLastKill[MAX_CLIENTS + 1], iCountKill[MAX_CLIENTS + 1]
new Float:flTime = get_gametime()

if ((flTime - flLastKill[pKiller]) > COMBO_TIME.0)
{
iCountKill[pKiller] = 0
}

iCountKill[pKiller]++

if (iCountKill[pKiller] > 1)
{
new Float:vecOrigin[3]

get_entvar(pPlayer, var_origin, vecOrigin)
// GetBonePosition(pPlayer, 8, vecOrigin)
vecOrigin[2] += 32.0

new pSpriteEntity = CreateSprite(pKiller, vecOrigin)

if (pSpriteEntity != NULLENT)
{
new Float:vecOrigin2[3]
get_entvar(pKiller, var_origin, vecOrigin2)

new Float:fScale = floatclamp((get_distance_f(vecOrigin, vecOrigin2) / 2000.0), 0.1, 0.6)

set_entvar(pSpriteEntity, var_scale, fScale)
set_entvar(pSpriteEntity, var_frame, float(iCountKill[pKiller]) - 1.0)

vecOrigin[0] = vecOrigin[1] = 0.0
vecOrigin[2] = 180.0 * fScale

set_entvar(pSpriteEntity, var_velocity, vecOrigin)

SetThink(pSpriteEntity, "SpriteThink")
set_entvar(pSpriteEntity, var_nextthink, get_gametime() + 0.1)
}
}

flLastKill[pKiller] = flTime

return HC_CONTINUE
}

public SpriteThink(const pSpriteEntity)
{
if (pSpriteEntity <= 0)
return

static Float:renderamt

if ((renderamt = get_entvar(pSpriteEntity, var_renderamt)) > 10.0)
{
set_entvar(pSpriteEntity, var_renderamt, renderamt - 10.0)
set_entvar(pSpriteEntity, var_nextthink, get_gametime() + 0.1)
}
else
{
RemoveSprite(pSpriteEntity)
}
}

RemoveSprite(const pSpriteEntity)
{
SetThink(pSpriteEntity, "")
set_entvar(pSpriteEntity, var_nextthink, -1.0)
engfunc(EngFunc_RemoveEntity, pSpriteEntity)
// set_entvar(pEntity, var_flags, FL_KILLME)
}

CreateSprite(const pPlayer, Float:vecOrigin[3])
{
new pSpriteEntity = rg_create_entity("env_sprite")

if (!is_nullent(pSpriteEntity))
{
engfunc(EngFunc_SetModel, pSpriteEntity, COMBO_SPRITE)
engfunc(EngFunc_SetOrigin, pSpriteEntity, vecOrigin)

set_entvar(pSpriteEntity, var_owner, pPlayer)
set_entvar(pSpriteEntity, var_movetype, MOVETYPE_NOCLIP)
set_entvar(pSpriteEntity, var_effects, EF_OWNER_VISIBILITY)
set_entvar(pSpriteEntity, var_rendermode, kRenderTransAdd)
// set_entvar(pSpriteEntity, var_renderfx, kRenderFxGlowShell)

#if defined SET_DEFAULT_COLOR
set_entvar(pSpriteEntity, var_rendercolor, SET_DEFAULT_COLOR)
#else
set_entvar(pSpriteEntity, var_rendercolor, g_vecColors[random(sizeof(g_vecColors))])
#endif
set_entvar(pSpriteEntity, var_renderamt, 255.0)

return pSpriteEntity
}

return NULLENT
}

Прикрепленные файлы:
Прикрепленное изображение

Прикрепленные файлы:
Прикрепленный файл  combo_on_kill.sma ( 4,88 килобайт ) Кол-во скачиваний: 10
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Fullserver
сообщение 29.1.2020, 15:14
Сообщение #2


Иконка группы

Стаж: 11 лет

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

Что такое SetThink? Такой константы не существует в стандартных инклудах, нужен инклуд.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя dehost
сообщение 29.1.2020, 15:59
Сообщение #3


Стаж: 13 лет

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

demoleridon, Локально компилирует без ошибок.


Золотое правило нравственности:
"Относись к людям так, как хочешь, чтобы относились к тебе."
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя VAdoS1997
сообщение 5.5.2020, 18:52
Сообщение #4
Стаж: 6 лет

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

Цитата(dehost @ 29.1.2020, 15:59) *
demoleridon, Локально компилирует без ошибок.

Я скомпилировал локально исходник, мне сейчас в консоле вот это пишет; Load fails: Plugin uses an unknown function (name "SetThink") - check your modules.ini.
Можешь подсказать что это? И как исправить
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Wolf228
сообщение 6.5.2020, 12:36
Сообщение #5
Стаж: 9 лет 4 месяца

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

VAdoS1997, del.

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