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

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

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

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

awp random

Статус пользователя GANS2302
сообщение 17.3.2015, 16:42
Сообщение #1


Стаж: 11 лет

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

Помогите сделать плагин
Чтобы каждый раунд раздовала авп рандомно, после 3го раунда и в чат и в худ писала кто выйграл авп(себе и всему серверу чтобы видно было)
И чтобы когда рандомно дает авп оружие которое в руке выкидовала!
Заранее спасибо)

Отредактировал: GANS2302, - 17.3.2015, 16:44
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя DirtyMatt
сообщение 17.3.2015, 16:58
Сообщение #2
Стаж: 11 лет

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

Можете яснее написать, что требуется?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
amxservak
сообщение 17.3.2015, 17:03
Сообщение #3
Стаж: 15 лет

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

Короче я так понял, нужен плагин который каждый раунд будет выдавать рандомно определенным кол-ва игрокам авп :) Типо подарок :)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя coca-cola :)
сообщение 17.3.2015, 17:04
Сообщение #4


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

Стаж: 12 лет
Город: Москва

Сообщений: 1306
Благодарностей: 1031
Полезность: 1247

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

Вы забыли написать, сколько готовы заплатить $$$
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя GANS2302
сообщение 17.3.2015, 17:08
Сообщение #5


Стаж: 11 лет

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

Цитата(DirtyMatt @ 17.3.2015, 20:58) *
Можете яснее написать, что требуется?

Мне нужен плагин который:
1. После 3го раунда раздает авп рандомно 1му игроку!
2. Было ограничение:
2.1 Чтобы раздовала каждые 2 раунда
2.2 Чтобы когда дает авп дропала оружие которое в руке
3. Чтобы когда рандомно довала авп писало в чат (всем и себе)
Код:
"[^x04Server^x01] ^x03Поздровляем ^x04%s^x03 - получил AWP"
(чтобы был колорчат)


Вот например этого! Но там вроде не работает имя, за место него показывает имя сервера!

Отредактировал: GANS2302, - 17.3.2015, 17:09
Прикрепленные файлы:
Прикрепленный файл  randomawp.sma ( 1,05 килобайт ) Кол-во скачиваний: 13
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя DirtyMatt
сообщение 17.3.2015, 17:22
Сообщение #6
Стаж: 11 лет

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

Код:
#include amxmodx
#include cstrike
#include fun

#if AMXX_VERSION_NUM < 183
#include colorchat
#endif

#define GIVE_ROUND 3 // После какого раунда выдаем AWP

new g_RoundCount

public plugin_init(){
register_plugin("AWP Random", "1.0", "DirtyMatt");

register_event("HLTV", "fRoundStart", "a", "1=0", "2=0")
}

public fRoundStart(){
g_RoundCount++;

if(g_RoundCount >= GIVE_ROUND){
fGiveAwp();
}
}

public fGiveAwp(){
new players[32], playerName[32], iPlayers, randomPlayer;
get_players(players, iPlayers, "h");
randomPlayer = random(iPlayers);

if(!is_user_connected(players[randomPlayer]) & !is_user_alive(players[randomPlayer])){
give_item(players[randomPlayer], "weapon_awp");
cs_set_user_bpammo(players[randomPlayer], CSW_AWP, 30);
get_user_name(players[randomPlayer], playerName, charsmax(playerName));
client_print_color(0, 0, "^1[^4Server^1]^3 Поздравляем! Игрок^4 %s^3 получил AWP", playerName);
}
}

Не тестировал.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя GANS2302
сообщение 17.3.2015, 17:23
Сообщение #7


Стаж: 11 лет

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

Цитата(DirtyMatt @ 17.3.2015, 21:22) *
Код:
#include amxmodx
#include cstrike
#include fun

#if AMXX_VERSION_NUM < 183
#include colorchat
#endif

#define GIVE_ROUND 3 // После какого раунда выдаем AWP

new g_RoundCount

public plugin_init(){
register_plugin("AWP Random", "1.0", "DirtyMatt");

register_event("HLTV", "fRoundStart", "a", "1=0", "2=0")
}

public fRoundStart(){
g_RoundCount++;

if(g_RoundCount >= GIVE_ROUND){
fGiveAwp();
}
}

public fGiveAwp(){
new players[32], playerName[32], iPlayers, randomPlayer;
get_players(players, iPlayers, "h");
randomPlayer = random(iPlayers);

if(!is_user_connected(players[randomPlayer]) & !is_user_alive(players[randomPlayer])){
give_item(players[randomPlayer], "weapon_awp");
cs_set_user_bpammo(players[randomPlayer], CSW_AWP, 30);
get_user_name(players[randomPlayer], playerName, charsmax(playerName));
client_print_color(0, 0, "^1[^4Server^1]^3 Поздравляем! Игрок^4 %s^3 получил AWP", playerName);
}
}

Не тестировал.

Щас тестану)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя DirtyMatt
сообщение 17.3.2015, 17:33
Сообщение #8
Стаж: 11 лет

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

Код:
#include amxmodx
#include cstrike
#include fun

#if AMXX_VERSION_NUM < 183
#include colorchat
#endif

#define GIVE_ROUND 3 // После какого раунда выдаем AWP

new g_RoundCount;

public plugin_init(){
register_plugin("AWP Random", "1.1", "DirtyMatt");

register_event("HLTV", "fRoundStart", "a", "1=0", "2=0")
}

public fRoundStart(){
g_RoundCount++;

if(g_RoundCount > GIVE_ROUND)
fGiveAwp();
}

public fGiveAwp() {
new iPlayers[32], iPlayerName[32], iPlayersNum;
get_players(iPlayers, iPlayersNum, "ah");
if(!iPlayersNum)
return;

new iPlayer = iPlayers[random_num(0,iPlayersNum - 1)];
give_item(iPlayer, "weapon_awp");
cs_set_user_bpammo(iPlayer, CSW_AWP, 30);

get_user_name(iPlayer, iPlayerName, charsmax(iPlayerName));
client_print_color(iPlayers[iPlayersNum], 0, "^1[^4SERVER^1]^3 Игрок^4 %s^3 получил AWP.", iPlayerName);
}

UPD. Исправил ошибочку.

Отредактировал: DirtyMatt, - 17.3.2015, 17:56
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя bandit123
сообщение 17.3.2015, 20:20
Сообщение #9


Стаж: 12 лет

Сообщений: 85
Благодарностей: 19
Полезность: 175

DirtyMatt, можете еще добавить чтобы перед тем как выдать авп игроку ему показывало меню, типа:

Хотите взять авп?

1. Да
2.Нет
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vovan4ik1997
сообщение 17.3.2015, 22:32
Сообщение #10


Стаж: 13 лет

Сообщений: 1087
Благодарностей: 433
Полезность: 718

bandit123, проверь
Код:
#include amxmodx
#include cstrike
#include fun


#define GIVE_ROUND 1 // После какого раунда выдаем AWP

new g_RoundCount;
new iPlayers[32], iPlayerName[32], iPlayersNum;

public plugin_init(){
register_plugin("AWP Random", "1.1", "DirtyMatt");

register_event("HLTV", "fRoundStart", "a", "1=0", "2=0")

}

public fRoundStart(){
g_RoundCount++;

if(g_RoundCount > GIVE_ROUND)
fGiveAwp();
}

public fGiveAwp() {

get_players(iPlayers, iPlayersNum, "ah");
if(!iPlayersNum)
return;

new iPlayer = iPlayers[random_num(0,iPlayersNum - 1)];
takemenu(iPlayer)

}
public takemenu(iPlayer)
{
new Menu = menu_create("\rTake your present?:", "menu_handler")

menu_additem(Menu, "\wYES", "1", 0)
menu_additem(Menu, "\wNO", "2", 0)

menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)

menu_display(iPlayer, Menu, 0)
}

public menu_handler(iPlayer, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)

return PLUGIN_HANDLED
}

new s_Data[6], s_Name[64], i_Access, i_Callback
menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)
new i_Key = str_to_num(s_Data)
switch(i_Key)
{
case 1:
{

give_item(iPlayer, "weapon_awp");
cs_set_user_bpammo(iPlayer, CSW_AWP, 30);

get_user_name(iPlayer, iPlayerName, charsmax(iPlayerName));
client_print(iPlayers[iPlayersNum], 0, "[SERVER] Player %s take AWP.", iPlayerName);
menu_destroy(menu)
return PLUGIN_HANDLED
}
case 2:
{
menu_destroy(menu)
return PLUGIN_HANDLED
}

}

menu_destroy(menu)
return PLUGIN_HANDLED
}


Представь, что ты заплатил однажды, а получаешь прибыль постоянно.
Закажи правильный контент тут
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя bandit123
сообщение 17.3.2015, 22:58
Сообщение #11


Стаж: 12 лет

Сообщений: 85
Благодарностей: 19
Полезность: 175

vovan4ik1997, спасибо щас потестим
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя bandit123
сообщение 17.3.2015, 23:37
Сообщение #12


Стаж: 12 лет

Сообщений: 85
Благодарностей: 19
Полезность: 175

vovan4ik1997,

Все работает, все отлично кроме одного, после того как взял авп второе оружие не убирается.
Можете сделать? Отблагодарю $$;

P.S.
Код
Код:
{
            menu_destroy(menu)
            return PLUGIN_HANDLED
        }
        
    }

    menu_destroy(menu)
    return PLUGIN_HANDLED
}

так и должно быть?


Отредактировал: bandit123, - 17.3.2015, 23:42
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vovan4ik1997
сообщение 17.3.2015, 23:43
Сообщение #13


Стаж: 13 лет

Сообщений: 1087
Благодарностей: 433
Полезность: 718

bandit123, Код:
#include amxmodx
#include cstrike
#include fun


#define GIVE_ROUND 1 // После какого раунда выдаем AWP

new g_RoundCount;
new iPlayers[32], iPlayerName[32], iPlayersNum;
#define PRIMARY_WEAPONS_BITSUM ((1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90))

public plugin_init(){
register_plugin("AWP Random", "1.1", "DirtyMatt");

register_event("HLTV", "fRoundStart", "a", "1=0", "2=0")

}

public fRoundStart(){
g_RoundCount++;

if(g_RoundCount > GIVE_ROUND)
fGiveAwp();
}

public fGiveAwp() {

get_players(iPlayers, iPlayersNum, "ah");
if(!iPlayersNum)
return;

new iPlayer = iPlayers[random_num(0,iPlayersNum - 1)];
takemenu(iPlayer)

}
public takemenu(iPlayer)
{
new Menu = menu_create("\rTake your present?:", "menu_handler")

menu_additem(Menu, "\wYES", "1", 0)
menu_additem(Menu, "\wNO", "2", 0)

menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)

menu_display(iPlayer, Menu, 0)
}

public menu_handler(iPlayer, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)

return PLUGIN_HANDLED
}

new s_Data[6], s_Name[64], i_Access, i_Callback
menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)
new i_Key = str_to_num(s_Data)
switch(i_Key)
{
case 1:
{
drop_primary( iPlayer );
give_item(iPlayer, "weapon_awp");
cs_set_user_bpammo(iPlayer, CSW_AWP, 30);

get_user_name(iPlayer, iPlayerName, charsmax(iPlayerName));
client_print(iPlayers[iPlayersNum], 0, "[SERVER] Player %s take AWP.", iPlayerName);
menu_destroy(menu)
return PLUGIN_HANDLED
}
case 2:
{
menu_destroy(menu)
return PLUGIN_HANDLED
}

}

menu_destroy(menu)
return PLUGIN_HANDLED
}
stock drop_primary( id )
{
new weapons[ 32 ], num;
get_user_weapons( id, weapons, num );
for( new i = 0; i < num; i++ )
{
if( PRIMARY_WEAPONS_BITSUM & (1<<weapons[ i ]) )
{
static wname[ 32 ];
get_weaponname( weapons[ i ], wname, sizeof wname - 1 );
engclient_cmd( id, "drop", wname );
}
}
}


Представь, что ты заплатил однажды, а получаешь прибыль постоянно.
Закажи правильный контент тут
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя bandit123
сообщение 17.3.2015, 23:52
Сообщение #14


Стаж: 12 лет

Сообщений: 85
Благодарностей: 19
Полезность: 175

vovan4ik1997, спасибо большое.

Кстати, а как спасибку поставить, а то у меня чет не выходит:D
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vovan4ik1997
сообщение 18.3.2015, 0:02
Сообщение #15


Стаж: 13 лет

Сообщений: 1087
Благодарностей: 433
Полезность: 718

bandit123, сообщений мало. Не за что


Представь, что ты заплатил однажды, а получаешь прибыль постоянно.
Закажи правильный контент тут
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя GANS2302
сообщение 18.3.2015, 9:29
Сообщение #16


Стаж: 11 лет

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

Там чат не работает, не показывает ничего!
(желательно колорчат)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя GOOD FELLOW
сообщение 18.3.2015, 10:10
Сообщение #17


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

Стаж: 13 лет

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

В client_print во втором аргументе вместо 0 поставь print_chat
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 18.3.2015, 10:19
Сообщение #18


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

GANS2302, color и даже на русский перевел :D
Код:
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <colorchat>


#define GIVE_ROUND 1 // После какого раунда выдаем AWP

new g_RoundCount;
new iPlayers[32], iPlayerName[32], iPlayersNum;
#define PRIMARY_WEAPONS_BITSUM ((1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90))

public plugin_init(){
register_plugin("AWP Random", "1.1", "DirtyMatt");

register_event("HLTV", "fRoundStart", "a", "1=0", "2=0")

}

public fRoundStart(){
g_RoundCount++;

if(g_RoundCount > GIVE_ROUND)
fGiveAwp();
}

public fGiveAwp() {

get_players(iPlayers, iPlayersNum, "ah");
if(!iPlayersNum)
return;

new iPlayer = iPlayers[random_num(0,iPlayersNum - 1)];
takemenu(iPlayer)

}
public takemenu(iPlayer)
{
new Menu = menu_create("\rВозьмете подарок?:", "menu_handler")

menu_additem(Menu, "\wДа", "1", 0)
menu_additem(Menu, "\wНет", "2", 0)

menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)
menu_setprop(Menu, MPROP_EXITNAME, "Выход")

menu_display(iPlayer, Menu, 0)
}

public menu_handler(iPlayer, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)

return PLUGIN_HANDLED
}

new s_Data[6], s_Name[64], i_Access, i_Callback
menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)
new i_Key = str_to_num(s_Data)
switch(i_Key)
{
case 1:
{
drop_primary( iPlayer );
give_item(iPlayer, "weapon_awp");
cs_set_user_bpammo(iPlayer, CSW_AWP, 30);

get_user_name(iPlayer, iPlayerName, charsmax(iPlayerName));
client_print_color(iPlayers[iPlayersNum], DontChange, "^1[^4SERVER^1] Игрок ^3%s ^1взял AWP.", iPlayerName);
menu_destroy(menu)
return PLUGIN_HANDLED
}
case 2:
{
menu_destroy(menu)
return PLUGIN_HANDLED
}

}

menu_destroy(menu)
return PLUGIN_HANDLED
}
stock drop_primary( id )
{
new weapons[ 32 ], num;
get_user_weapons( id, weapons, num );
for( new i = 0; i < num; i++ )
{
if( PRIMARY_WEAPONS_BITSUM & (1<<weapons[ i ]) )
{
static wname[ 32 ];
get_weaponname( weapons[ i ], wname, sizeof wname - 1 );
engclient_cmd( id, "drop", wname );
}
}
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя GANS2302
сообщение 18.3.2015, 11:03
Сообщение #19


Стаж: 11 лет

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

Цитата(Bloo @ 18.3.2015, 14:19) *
GANS2302, color и даже на русский перевел :D

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