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

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

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

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

> Правила форума

Этот раздел, как вы могли заметить по названию, предназначен для решения вопросов по поводу уже существующих модов и плагинов.
Пожалуйста, если у вас проблема с написанием плагина, не путайте этот раздел с разделом по скриптингу.
Для поиска плагинов и модов существует соответствующий раздел.

Название темы должно соответствовать содержанию. Темы с названием типа "Помогите", "Вопрос", "парни подскажите..." - будут удалены.
Все темы, не относящиеся к "Вопросам по модам и плагинам", будут удалены или перемещены в соответствующий раздел.

Правила оформления темы:
1. Помимо заголовка не забудьте верно сформулировать свой вопрос.
2. Выложите исходник (в тег кода + ) или ссылку на плагин который вызывает у вас вопросы.
3. Выложите лог с ошибками (если имеется) под спойлер

Ошибка в плагине

Статус пользователя vasif
сообщение 1.1.2013, 19:27
Сообщение #1
Стаж: 13 лет

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

Здравствуйте всех с праздником....
Установил на сервер плагин paintball.amxx
В игре всё нормально да и сервер не падает и ничего такого,но в консоле постоянно показывает ошибку


L 01/01/2013 - 21:25:49: [ENGINE] Invalid entity 99
L 01/01/2013 - 21:25:49: [AMXX] Run time error 10 (plugin "paintball.amxx") (native "entity_get_string") - debug not enabled!
L 01/01/2013 - 21:25:49: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).


Не знаю сделал правильно или нет,но как понял ,типо в plugins.ini , после paintball.amxx надо дописать debug ,я это сделал, но потом выдаёт уже другую ошибку


L 01/01/2013 - 20:51:47: [ENGINE] Invalid entity 99
L 01/01/2013 - 20:51:47: [AMXX] Displaying debug trace (plugin "paintball.amxx")
L 01/01/2013 - 20:51:47: [AMXX] Run time error 10: native error (native "entity_get_string")
L 01/01/2013 - 20:51:47: [AMXX] [0] 13775.attach::pfn_think (line 225)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя AndrewZ
сообщение 1.1.2013, 19:54
Сообщение #2


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

Стаж: 18 лет
Город: Санкт-Петербург


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

vasif,
Что мы сможем сделать не имея исходника?


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя GOOD FELLOW
сообщение 1.1.2013, 20:44
Сообщение #3


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

Стаж: 13 лет

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

Цитата(AndrewZ @ 1.1.2013, 19:54) *
vasif,
Что мы сможем сделать не имея исходника?


гадать на кофейной гуще)))
исходник please
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vasif
сообщение 1.1.2013, 20:47
Сообщение #4
Стаж: 13 лет

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

Плагин
/*******************************************************************************
AMX Paint Ball


Author: KRoTaL
Version: 0.5
- Ported to AMX MOD X by SAMURAI and Updated !

0.1 Release
0.2 Optimization + added cvar paintball_randomcolor
0.3 Added cvar paintball_lifetime
0.4 Added pcvars
0.5 (10/02/2007) - Added a new cvar (read on Cvars part)


Cvars:

paintball "1" - 0: disables the plugin
1: enables the plugin

paintball_randomcolor "0" - 0: use defined colors
1: completely random colors
NEW :
2: by team functions :
players from CT Team will have blue colors
players from T Team will have red colors

paintball_maxballs "200" - how many balls (entities) on the map can be created by the plugin
decrease the value if your server crashes

paintball_lifetime "10" - lifetime in seconds of the colored entities


Setup:

Install the amxx file.
Enable Engine and Cstrike Module


*******************************************************************************/

#include <amxmodx>
#include <engine>
#include <cstrike>

#define MAX_COLORS 9


new g_paintSprite[2][] = {"sprites/bhit.spr", "sprites/richo1.spr"}
new g_paintColors[MAX_COLORS][3] = {
{255,255,255}, // white
{255,0,0}, // red
{0,255,0}, // green
{0,0,255}, // blue
{255,255,0}, // yellow
{255,0,255}, // magenta
{0,255,255}, // cyan
{255,20,147}, // pink
{255,165,0} // orange
}

new lastwpn[33]
new lastammo[33]
new g_ballsnum = 0

// Cvars //
new paintball
new paintball_lifetime
new paintball_randomcolor
new paintball_maxballs


public plugin_init()
{
register_plugin("Paint Ball", "0.5", "KRoTaL")
paintball = register_cvar("paintball", "1")
paintball_randomcolor = register_cvar("paintball_randomcolor", "0")
paintball_maxballs = register_cvar("paintball_maxballs", "200")
paintball_lifetime = register_cvar("paintball_lifetime", "10")
register_event("CurWeapon", "make_paint", "be", "3>0")
register_logevent("new_round", 2, "0=World triggered", "1=Round_Start")
}

public plugin_precache()
{
precache_model("sprites/bhit.spr")
precache_model("sprites/richo1.spr")
}

stock worldInVicinity(Float:origin[3]) {
new ent = find_ent_in_sphere(-1, origin, 4.0)
while(ent > 0)
{
if(entity_get_float(ent, EV_FL_health) > 0 || entity_get_float(ent, EV_FL_takedamage) > 0.0)
return 0
ent = find_ent_in_sphere(ent, origin, 4.0)
}

new Float:traceEnds[8][3], Float:traceHit[3], hitEnt

traceEnds[0][0] = origin[0] - 2.0
traceEnds[0][1] = origin[1] - 2.0
traceEnds[0][2] = origin[2] - 2.0

traceEnds[1][0] = origin[0] - 2.0
traceEnds[1][1] = origin[1] - 2.0
traceEnds[1][2] = origin[2] + 2.0

traceEnds[2][0] = origin[0] + 2.0
traceEnds[2][1] = origin[1] - 2.0
traceEnds[2][2] = origin[2] + 2.0

traceEnds[3][0] = origin[0] + 2.0
traceEnds[3][1] = origin[1] - 2.0
traceEnds[3][2] = origin[2] - 2.0

traceEnds[4][0] = origin[0] - 2.0
traceEnds[4][1] = origin[1] + 2.0
traceEnds[4][2] = origin[2] - 2.0

traceEnds[5][0] = origin[0] - 2.0
traceEnds[5][1] = origin[1] + 2.0
traceEnds[5][2] = origin[2] + 2.0

traceEnds[6][0] = origin[0] + 2.0
traceEnds[6][1] = origin[1] + 2.0
traceEnds[6][2] = origin[2] + 2.0

traceEnds[7][0] = origin[0] + 2.0
traceEnds[7][1] = origin[1] + 2.0
traceEnds[7][2] = origin[2] - 2.0

for (new i = 0; i < 8; i++) {
if (PointContents(traceEnds[i]) != CONTENTS_EMPTY)
{
return 1
}

hitEnt = trace_line(0, origin, traceEnds[i], traceHit)
if (hitEnt != -1)
{
return 1
}
for (new j = 0; j < 3; j++) {
if (traceEnds[i][j] != traceHit[j])
{
return 1
}
}
}

return 0
}

public make_paint(id)
{
new wpn = read_data(2)
new ammo = read_data(3)

new CsTeams:playert = cs_get_user_team(id)

if(get_pcvar_num(paintball) == 1 && lastwpn[id] == wpn && lastammo[id] > ammo)
{
new iOrigin[3]
get_user_origin(id, iOrigin, 4)
new Float:fOrigin[3]
IVecFVec(iOrigin, fOrigin)

if(g_ballsnum < get_pcvar_num(paintball_maxballs) /*get_num_ents() < (global_get_int(GV_INT_maxEntities) - 100)*/ && worldInVicinity(fOrigin))
{
new ent = create_entity("info_target")
if(ent > 0)
{
entity_set_string(ent, EV_SZ_classname, "paint_ent")
entity_set_int(ent, EV_INT_movetype, 0)
entity_set_int(ent, EV_INT_solid, 0)
entity_set_model(ent, g_paintSprite[random_num(0,1)])
new r, g, b
if(get_pcvar_num(paintball_randomcolor) == 0)
{
new i = random_num(0, MAX_COLORS-1)
r = g_paintColors[i][0]
g = g_paintColors[i][1]
b = g_paintColors[i][2]
}
else if(get_pcvar_num(paintball_randomcolor) == 1)
{
r = random_num(64,255)
g = random_num(64,255)
b = random_num(64,255)
}

else if(get_pcvar_num(paintball_randomcolor) == 2)
{
if(playert == CS_TEAM_CT)
{
r = 0
g = 0
b = 255
}

else
{
r = 255
g = 0
b = 0
}
}

set_rendering(ent, kRenderFxNoDissipation, r, g, b, kRenderGlow, 255)
entity_set_origin(ent, fOrigin)
entity_set_int(ent, EV_INT_flags, FL_ALWAYSTHINK)
entity_set_float(ent, EV_FL_nextthink, get_gametime() + get_pcvar_float(paintball_lifetime))
++g_ballsnum
}
}
}
lastwpn[id] = wpn
lastammo[id] = ammo
}

public pfn_think(entity) {
if(entity > 0) {
new class[32]
entity_get_string(entity, EV_SZ_classname, class, 31)
if(equal(class, "paint_ent")) {
remove_entity(entity)
--g_ballsnum
}
}
}

public new_round()
{
remove_entity_name("paint_ent")
g_ballsnum = 0
}



/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par }
*/


Отредактировал: vasif, - 2.1.2013, 12:57
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vasif
сообщение 1.1.2013, 22:39
Сообщение #5
Стаж: 13 лет

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

Поможете?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя AndrewZ
сообщение 1.1.2013, 23:10
Сообщение #6


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

Стаж: 18 лет
Город: Санкт-Петербург


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

vasif,
длинные тексты под спойлер нужно.


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Evolver
сообщение 2.1.2013, 1:54
Сообщение #7


Стаж: 13 лет

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

Где брал plugin? ;) Как-то череп *опу всё сделано. Чтобы не замарачиваться просто найди другой. Если хочешь напишу тебе бесплатно с нуля, данный плагин)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя vasif
сообщение 2.1.2013, 12:58
Сообщение #8
Стаж: 13 лет

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

Везде где не искал....именно такой с такой ошибкой....(((


Цитата(AndrewZ @ 2.1.2013, 1:10) *
vasif,
длинные тексты под спойлер нужно.

Сделал
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 2.1.2013, 13:09
Сообщение #9


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

Стаж: 15 лет

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

замените
Код
public pfn_think(entity) {
if(entity > 0) {
new class[32]
entity_get_string(entity, EV_SZ_classname, class, 31)
if(equal(class, "paint_ent")) {
remove_entity(entity)
--g_ballsnum
}
}
}
на
Код
public pfn_think(entity) {
new static pl
if(!pl)
    pl=get_maxplayers()
if(entity > 0 && entity<pl) {
new class[32]
entity_get_string(entity, EV_SZ_classname, class, 31)
if(equal(class, "paint_ent")) {
remove_entity(entity)
--g_ballsnum
}
}
}


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя vasif
сообщение 2.1.2013, 13:59
Сообщение #10
Стаж: 13 лет

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

Цитата(mazdan @ 2.1.2013, 15:09) *
замените
Код
public pfn_think(entity) {
if(entity > 0) {
new class[32]
entity_get_string(entity, EV_SZ_classname, class, 31)
if(equal(class, "paint_ent")) {
remove_entity(entity)
--g_ballsnum
}
}
}
на
Код
public pfn_think(entity) {
new static pl
if(!pl)
    pl=get_maxplayers()
if(entity > 0 && entity<pl) {
new class[32]
entity_get_string(entity, EV_SZ_classname, class, 31)
if(equal(class, "paint_ent")) {
remove_entity(entity)
--g_ballsnum
}
}
}



При компиляции такая ошибка:

Скрытый текст
//AMXXPC compile.exe
// by the AMX Mod X Dev Team


//// paintball.sma
// D:\StrikeServer\cstrike\addons\amxmodx\scripting\paintball.sma(223) : error 0
20: invalid symbol name ""
// D:\StrikeServer\cstrike\addons\amxmodx\scripting\paintball.sma(223) : error 0
17: undefined symbol "pl"
// D:\StrikeServer\cstrike\addons\amxmodx\scripting\paintball.sma(224) : error 0
17: undefined symbol "pl"
// D:\StrikeServer\cstrike\addons\amxmodx\scripting\paintball.sma(225) : error 0
17: undefined symbol "pl"
// D:\StrikeServer\cstrike\addons\amxmodx\scripting\paintball.sma(225) : warning
217: loose indentation
// D:\StrikeServer\cstrike\addons\amxmodx\scripting\paintball.sma(226) : warning
217: loose indentation
// D:\StrikeServer\cstrike\addons\amxmodx\scripting\paintball.sma(226) : error 0
17: undefined symbol "pl"
// D:\StrikeServer\cstrike\addons\amxmodx\scripting\paintball.sma(234) : warning
203: symbol is never used: ""
//
// 5 Errors.
// Could not locate output file D:\StrikeServer\cstrike\addons\amxmodx\scripting
\compiled\paintball.amx (compile failed).
//
// Compilation Time: 0,61 sec
// ----------------------------------------

Press enter to exit ...
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 2.1.2013, 14:05
Сообщение #11


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

Стаж: 15 лет

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

ой
new static pl замените на static pl


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя vasif
сообщение 2.1.2013, 14:07
Сообщение #12
Стаж: 13 лет

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

Цитата(mazdan @ 2.1.2013, 16:05) *
ой
new static pl замените на static pl

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