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

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

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

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

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

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

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

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

Есть ли какие дырки в плагине?

, Вопрос безопасности
Статус пользователя sh1bashov
сообщение 9.11.2015, 21:43
Сообщение #1


Стаж: 10 лет

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

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

Нашёл на просторах интернета плагин Team Score c исходником, хотелось бы узнать мнение бывалых, чист ли он?


Cам код
Код:
/*
Plugin author by REaL
*/

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Team Score"
#define VERSION "2.0"
#define AUTHOR "REaL"
#define LOADING "^n^t%s v%s, Copyright © 2013 by %s^n"

new iconstatus;
new user_icons[32][192];
new icon_origin[3] = {0,0,0}
new pcv_show;
new pcv_iloc;

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);
server_print(LOADING,PLUGIN,VERSION,AUTHOR);
register_plugin(PLUGIN, VERSION, AUTHOR);

register_event ("CurWeapon", "update_icon", "ab")
register_event("DeathMsg", "event_death", "a")
pcv_show = register_cvar("amx_show_weapon_icon", "1");
pcv_iloc = register_cvar("amx_show_weapon_icon_location", "1");
register_concmd("amx_weapon_icon", "weapon_icon_toggle", ADMIN_CVAR, "Toggle display of the weapon icon on/off (default on)")

check_icon_loc();
}

public update_icon(id) {
check_icon_loc();
if(!get_pcvar_num(pcv_show) || get_pcvar_num(pcv_iloc) == 0)
return PLUGIN_CONTINUE;

if(is_user_alive(id))
{
new iwpn, wclip, wammo, sprite[192], icon_color[3] = {0, 160, 0}

remove_weapon_icon(id)

iwpn = get_user_weapon(id, wclip, wammo)
switch(iwpn) {
case CSW_P228: sprite = "score"
case CSW_SCOUT: sprite = "score"
case CSW_HEGRENADE: sprite = "score"
case CSW_XM1014: sprite = "score"
case CSW_C4: sprite = "score"
case CSW_MAC10: sprite = "score"
case CSW_AUG: sprite = "score"
case CSW_SMOKEGRENADE: sprite = "score"
case CSW_ELITE: sprite = "score"
case CSW_FIVESEVEN: sprite = "score"
case CSW_UMP45: sprite = "score"
case CSW_SG550: sprite = "score"
case CSW_GALIL: sprite = "score"
case CSW_FAMAS: sprite = "score"
case CSW_USP: sprite = "score"
case CSW_MP5NAVY: sprite = "score"
case CSW_M249: sprite = "score"
case CSW_M3: sprite = "score"
case CSW_M4A1: sprite = "score"
case CSW_TMP: sprite = "score"
case CSW_G3SG1: sprite = "score"
case CSW_FLASHBANG: sprite = "score"
case CSW_DEAGLE: sprite = "score"
case CSW_SG552: sprite = "score"
case CSW_AK47: sprite = "score"
case CSW_KNIFE: sprite = "score"
case CSW_P90: sprite = "score"
case CSW_VEST: sprite = "score"
case CSW_VESTHELM: sprite = "score"
case CSW_GLOCK18: sprite = "score"
case CSW_AWP: sprite = "score"
case 0: sprite = ""
default: sprite = ""
}
if (is_user_ok(id)) {
if (equali(sprite, "") || !is_user_ok(id)) {
remove_weapon_icon(id)
} else {
// draw the sprite itself (only on a human user's screen)
// marker ////////////////////////////////////////////////////////////////////////////////
message_begin(MSG_ONE,iconstatus,icon_origin,id);
write_byte(1); // status (0=hide, 1=show, 2=flash)
write_string(sprite); // sprite name

/*
4 stages - Normal, 1 Clip, No Clip + Some ammo, Completely Out

*/

// ammo check, this is for the color of the icon
get_user_ammo(id, iwpn, wammo, wclip) // update vars correctly
if (wclip == 0 && wammo == 0) icon_color = {0, 0, 255} // outta ammo!
if (wclip == wammo || wclip > wammo) icon_color = {255, 150, 150} // last clip!
if (wammo > 0 && wclip == 0) icon_color = {255, 100, 100} // almost out!
// attempt at percentage max clip & % red/green color
// 1: Get max ammo for weapon
//maxammo = maxclip(iwpn);


write_byte(icon_color[0]); // red
write_byte(icon_color[1]); // green
write_byte(icon_color[2]); // blue
message_end();
}
user_icons[id] = sprite;
}
}
return PLUGIN_CONTINUE
}

public weapon_icon_toggle(id) {
new toggle[32], players[32], num, player, status[32] = "enabled"
read_argv(1, toggle, 1)

if (equali(toggle, "1")) {
status = "enabled"
} else if (equali(toggle, "0")) {
status = "disabled"
} else if (equali(toggle, "")) {
console_print(id, "Usage: amx_weapon_icon <1/0> - Toggles wether or not showing the user's current weapon as an icon")
console_print(id, "Weapon Icon is currently %s", status)
return PLUGIN_HANDLED
}

set_cvar_string("amx_show_weapon_icon", toggle)
client_print(0, print_chat, "Weapon Icon is now %s", status)
get_players(players, num)
for (new i=0; i<num; i++) {
player = players[i]
if (!equali(user_icons[player], "") && !equali(players[i], "") && is_user_ok(id)) {
remove_weapon_icon(i)
}
}
return PLUGIN_CONTINUE
}

public remove_weapon_icon(id) {
if (is_user_ok(id)) {
message_begin(MSG_ONE,iconstatus,icon_origin,id);
write_byte(0);
write_string(user_icons[id]);
message_end();
}
}

public is_user_ok(id) {
// check if the user is "ok": they are connected, not a bot, and alive
if (is_user_connected(id) && !is_user_bot(id) && is_user_alive(id))
return true
return false
}

public event_death() {
new player = read_data(2) // the dead player's ID (1-32)
if (is_user_connected(player) && !is_user_bot(player)) { // remove icon
message_begin(MSG_ONE,iconstatus,icon_origin,player);
write_byte(0);
write_string(user_icons[player]);
message_end();
}
}

public check_icon_loc() {
if(!get_pcvar_num(pcv_iloc))
return PLUGIN_CONTINUE;
new value = get_pcvar_num(pcv_iloc);
if (value == 0)
iconstatus = 0;
if (value == 1)
iconstatus = get_user_msgid("StatusIcon");
if (value == 2)
iconstatus = get_user_msgid("Scenario");
return PLUGIN_CONTINUE;
}


Твой сервер - это отображение твоего внутреннего мира и твоих детских желаний. ©
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя adva
сообщение 9.11.2015, 21:45
Сообщение #2


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

Стаж: 12 лет

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

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

чистый
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
voed
сообщение 9.11.2015, 21:51
Сообщение #3
Стаж: 11 лет

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

Только код индусский немного smile.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя sh1bashov
сообщение 9.11.2015, 21:53
Сообщение #4


Стаж: 10 лет

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

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

Цитата(adva @ 9.11.2015, 21:41) *
чистый

Спасибо

Цитата(voed @ 9.11.2015, 21:47) *
Только код индусский немного smile.gif

Всмысле индусский?



Если кому надо, скину спрайты для него.

Отредактировал: sh1bashov, - 9.11.2015, 21:54


Твой сервер - это отображение твоего внутреннего мира и твоих детских желаний. ©
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя g0ldenman
сообщение 9.11.2015, 23:32
Сообщение #5


Стаж: 10 лет

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

Опишите что делает этот плагин.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя adva
сообщение 9.11.2015, 23:35
Сообщение #6


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

Стаж: 12 лет

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

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

Цитата(g0ldenman @ 10.11.2015, 0:27) *
Опишите что делает этот плагин.


Есть подозрение, что иконки оружия на экране показывает, в зависимости от выбранного оружия
Или подсчёт убийств с определённого оружия в ввиде значка

Отредактировал: adva, - 9.11.2015, 23:54
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя csnet
сообщение 10.11.2015, 2:40
Сообщение #7
Стаж: 12 лет

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

нет он показывает TGA со счетом команд как в cso
просто что оно для 800 на 600, а для 1024 будет не по центру


go v cs:go
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя g0ldenman
сообщение 15.11.2015, 12:12
Сообщение #8


Стаж: 10 лет

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

Цитата(csnet @ 10.11.2015, 2:36) *
нет он показывает TGA со счетом команд как в cso
просто что оно для 800 на 600, а для 1024 будет не по центру


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