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

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

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

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

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

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

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

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

VIP Plugin

WMP
сообщение 8.12.2012, 16:00
Сообщение #1
Стаж: 13 лет

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

Привет всем, возник вопрос по плагину. Написал плагин небольшой, но вот не могу скомпилировать, не пойму , что за ерроры.
Плагин
/* Plugin created by WMP */

#include <amxmodx>
#include <amxmisc>
#include <fun>

#define PLUGIN "VIP Plugin"
#define VERSION "1.0"
#define AUTHOR "WMP"


public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /vip", "vip")
register_clcmd("say_team /vip", "vip")
register_clcmd("say /wantvip", "show_motd")
register_clcmd("say_team /wantvip", "show_motd")
}

public vip(id) {
if( get_user_flags(id) & ADMIN_LEVEL_F ){
give_item(id,"weapon_deagle")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"weapon_hegrenade")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_smokegrenade)
set_user_armor(id, 100)
}
}

public client_connected(id) {
set_task(5.0, "connect_message")
}

public connect_message(id) {
if( get_user_flags(id) & ADMIN_LEVEL_F ){
client_printcolor(id, "^4Вы можете использовать команду ^3/vip")
client_printcolor(id, "^4Покупка VIP прав -> ^3/wantvip")
client_printcolor(id, "^4Покупка админки -> ^3/adminka")
}
}

public show_motd(id) {
show_motd(id,"vip.txt","Покупка VIP прав")
}

stock client_printcolor( const id, const input[], any:... )
{
new count = 1, players[ 32 ]
static msg[ 191 ]
vformat( msg, 190, input, 3 )

replace_all( msg, 190, "!g", "^4" ) // Green Color
replace_all( msg, 190, "!n", "^1" ) // Default Color
replace_all( msg, 190, "!t", "^3" ) // Team Color

if( id ) players[ 0 ] = id; else get_players( players, count, "ch" )
{
for( new i = 0; i < count; i++ )
{
if( is_user_connected( players[ i ] ) )
{
message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "SayText" ), _, players[ i ] )
write_byte( players[ i ] )
write_string( msg )
message_end()
}
}
}
}

/* All rights reserved. Thank you for using the plugin */


Ошибки (errors)

//AMXXPC compile.exe
// by the AMX Mod X Dev Team

error 037: invalid string (possibly non-terminated string)
error 021: symbol already defined: "show_motd"

Press enter to exit ...


Отредактировал: WMP, - 8.12.2012, 16:02
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
underwoker
сообщение 8.12.2012, 16:14
Сообщение #2
Стаж: 56 лет


Благодарностей:

Скрытый текст
Код
/* Plugin created by WMP */

#include <amxmodx>
#include <amxmisc>
#include <fun>

#define PLUGIN "VIP Plugin"
#define VERSION "1.0"
#define AUTHOR "WMP"


public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /vip", "vip")
register_clcmd("say_team /vip", "vip")
register_clcmd("say /wantvip", "show_mote")
register_clcmd("say_team /wantvip", "show_mote")
}

public vip(id) {
if( get_user_flags(id) & ADMIN_LEVEL_F ){
give_item(id,"weapon_deagle")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"weapon_hegrenade")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_smokegrenade")
set_user_armor(id, 100)
}
}

public client_connected(id) {
set_task(5.0, "connect_message")
}

public connect_message(id) {
if( get_user_flags(id) & ADMIN_LEVEL_F ){
client_printcolor(id, "^4Вы можете использовать команду ^3/vip")
client_printcolor(id, "^4Покупка VIP прав -> ^3/wantvip")
client_printcolor(id, "^4Покупка админки -> ^3/adminka")
}
}

public show_mote(id) {
show_motd(id,"vip.txt","Покупка VIP прав")
}

stock client_printcolor( const id, const input[], any:... )
{
new count = 1, players[ 32 ]
static msg[ 191 ]
vformat( msg, 190, input, 3 )

replace_all( msg, 190, "!g", "^4" ) // Green Color
replace_all( msg, 190, "!n", "^1" ) // Default Color
replace_all( msg, 190, "!t", "^3" ) // Team Color

if( id ) players[ 0 ] = id; else get_players( players, count, "ch" )
{
for( new i = 0; i < count; i++ )
{
if( is_user_connected( players[ i ] ) )
{
message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "SayText" ), _, players[ i ] )
write_byte( players[ i ] )
write_string( msg )
message_end()
}
}
}
}

/* All rights reserved. Thank you for using the plugin */
Перейти в начало страницы     
Поблагодарили 2 раз
   +
WMP
сообщение 8.12.2012, 16:20
Сообщение #3
Стаж: 13 лет

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

И еще такой момент, как сделать, когда юзер пишет /vip, но он не имеет прав написания команды, ему было написано: вы не имеете прав для использования команды?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
underwoker
сообщение 8.12.2012, 16:25
Сообщение #4
Стаж: 56 лет


Благодарностей:

Скрытый текст
Код
/* Plugin created by WMP */

#include <amxmodx>
#include <amxmisc>
#include <fun>

#define PLUGIN "VIP Plugin"
#define VERSION "1.0"
#define AUTHOR "WMP"


public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_clcmd("say /vip", "vip")
    register_clcmd("say_team /vip", "vip")
    register_clcmd("say /wantvip", "show_mote")
    register_clcmd("say_team /wantvip", "show_mote")
}

public vip(id)
{
    if( get_user_flags(id) & ADMIN_LEVEL_F )
    {
        give_item(id,"weapon_deagle")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"weapon_hegrenade")
        give_item(id,"weapon_flashbang")
        give_item(id,"weapon_flashbang")
        give_item(id,"weapon_smokegrenade")
        set_user_armor(id, 100)
    }
    else
    {
        client_printcolor(id, "^4Вы не имеете права к ^3VIP ^4привилегиям")
    }
}

public client_connected(id) {
    set_task(5.0, "connect_message")
}

public connect_message(id) {
    if( get_user_flags(id) & ADMIN_LEVEL_F ){
        client_printcolor(id, "^4Вы можете использовать команду ^3/vip")
        client_printcolor(id, "^4Покупка VIP прав -> ^3/wantvip")
        client_printcolor(id, "^4Покупка админки -> ^3/adminka")
    }
}

public show_mote(id) {
    show_motd(id,"vip.txt","Покупка VIP прав")
}

stock client_printcolor( const id, const input[], any:... )
{
    new count = 1, players[ 32 ]
    static msg[ 191 ]
    vformat( msg, 190, input, 3 )

    replace_all( msg, 190, "!g", "^4" ) // Green Color
    replace_all( msg, 190, "!n", "^1" ) // Default Color
    replace_all( msg, 190, "!t", "^3" ) // Team Color

    if( id ) players[ 0 ] = id; else get_players( players, count, "ch" )
    {
        for( new i = 0; i < count; i++ )
        {
            if( is_user_connected( players[ i ] ) )
            {
                message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "SayText" ), _, players[ i ] )
                write_byte( players[ i ] )
                write_string( msg )
                message_end()
            }
        }
    }
}

/* All rights reserved. Thank you for using the plugin */


Отредактировал: underwoker, - 8.12.2012, 16:26
Перейти в начало страницы     
Поблагодарили 1 раз
   +
WMP
сообщение 8.12.2012, 16:35
Сообщение #5
Стаж: 13 лет

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

underwoker, спасибо кэп :)

Отредактировал: WMP, - 8.12.2012, 18:19
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
WMP
сообщение 8.12.2012, 18:21
Сообщение #6
Стаж: 13 лет

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

Как сделать ограничение на использование команды vip? Или же , как сделать, чтобы не писать /vip, а сразу давало? :)

Отредактировал: WMP, - 8.12.2012, 18:21
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
WMP
сообщение 8.12.2012, 18:56
Сообщение #7
Стаж: 13 лет

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

ап
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
underwoker
сообщение 8.12.2012, 19:24
Сообщение #8
Стаж: 56 лет


Благодарностей:

Скрытый текст
Код
/* Plugin created by WMP */

#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <fun>

#define PLUGIN "VIP Plugin"
#define VERSION "1.0"
#define AUTHOR "WMP/underwoker"

new g_Maxplayers

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_clcmd("say /vip", "vip")
    register_clcmd("say_team /vip", "vip")
    register_clcmd("say /wantvip", "show_mote")
    register_clcmd("say_team /wantvip", "show_mote")
    register_logevent("round_start",2,"1=Round_Start");
    g_Maxplayers = get_maxplayers();
}

public vip(id)
{
    if( get_user_flags(id) & ADMIN_LEVEL_F )
    {
        give_item(id,"weapon_deagle")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"weapon_hegrenade")
        give_item(id,"weapon_flashbang")
        give_item(id,"weapon_flashbang")
        give_item(id,"weapon_smokegrenade")
        set_user_armor(id, 100)
    }
    else
    {
        client_printcolor(id, "^4Вы не имеете права к ^3VIP ^4привилегиям")
    }
}

public round_start(id)
{
    for(new id = 1; id <= g_Maxplayers; id++)
    {
        if(!is_user_connected(id))
        continue

        if(is_user_alive(id))
        {
            set_task(1.0, "player_respawn", id)
        }
    }
}

public player_respawn(id)
{
    if( get_user_flags(id) & ADMIN_LEVEL_F )
    {
        give_item(id,"weapon_deagle")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"weapon_hegrenade")
        give_item(id,"weapon_flashbang")
        give_item(id,"weapon_flashbang")
        give_item(id,"weapon_smokegrenade")
        set_user_armor(id, 100)
    }
}

public client_connected(id) {
    set_task(5.0, "connect_message")
}

public connect_message(id) {
    if( get_user_flags(id) & ADMIN_LEVEL_F ){
        client_printcolor(id, "^4Вы можете использовать команду ^3/vip")
        client_printcolor(id, "^4Покупка VIP прав -> ^3/wantvip")
        client_printcolor(id, "^4Покупка админки -> ^3/adminka")
    }
}

public show_mote(id) {
    show_motd(id,"vip.txt","Покупка VIP прав")
}

stock client_printcolor( const id, const input[], any:... )
{
    new count = 1, players[ 32 ]
    static msg[ 191 ]
    vformat( msg, 190, input, 3 )

    replace_all( msg, 190, "!g", "^4" ) // Green Color
    replace_all( msg, 190, "!n", "^1" ) // Default Color
    replace_all( msg, 190, "!t", "^3" ) // Team Color

    if( id ) players[ 0 ] = id; else get_players( players, count, "ch" )
    {
        for( new i = 0; i < count; i++ )
        {
            if( is_user_connected( players[ i ] ) )
            {
                message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "SayText" ), _, players[ i ] )
                write_byte( players[ i ] )
                write_string( msg )
                message_end()
            }
        }
    }
}

/* All rights reserved. Thank you for using the plugin */

Теперь можно будет брать командой /vip, а так же при спавне будет выдаваться оружие.

Отредактировал: underwoker, - 8.12.2012, 19:26
Перейти в начало страницы     
   +
WMP
сообщение 8.12.2012, 20:55
Сообщение #9
Стаж: 13 лет

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

И еще =) Как сделать, чтобы забирался usp или glock (ct и t)?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
underwoker
сообщение 8.12.2012, 21:07
Сообщение #10
Стаж: 56 лет


Благодарностей:

Скрытый текст
Код
/* Plugin created by WMP */

#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <fun>

#define PLUGIN "VIP Plugin"
#define VERSION "1.0"
#define AUTHOR "WMP/underwoker"

new g_Maxplayers

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_clcmd("say /vip", "vip")
    register_clcmd("say_team /vip", "vip")
    register_clcmd("say /wantvip", "show_mote")
    register_clcmd("say_team /wantvip", "show_mote")
    register_logevent("round_start",2,"1=Round_Start");
    g_Maxplayers = get_maxplayers();
}

public vip(id)
{
    if( get_user_flags(id) & ADMIN_LEVEL_F )
    {
        give_item(id,"weapon_deagle")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"weapon_hegrenade")
        give_item(id,"weapon_flashbang")
        give_item(id,"weapon_flashbang")
        give_item(id,"weapon_smokegrenade")
        set_user_armor(id, 100)
    }
    else
    {
        client_printcolor(id, "^4Вы не имеете права к ^3VIP ^4привилегиям")
    }
}

public round_start(id)
{
    for(new id = 1; id <= g_Maxplayers; id++)
    {
        if(!is_user_connected(id))
        continue

        if(is_user_alive(id))
        {
            set_task(1.0, "player_respawn", id)
        }
    }
}

public player_respawn(id)
{
    if( get_user_flags(id) & ADMIN_LEVEL_F )
    {
        give_item(id,"weapon_deagle")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"ammo_50ae")
        give_item(id,"weapon_hegrenade")
        give_item(id,"weapon_flashbang")
        give_item(id,"weapon_flashbang")
        give_item(id,"weapon_smokegrenade")
        set_user_armor(id, 100)
        if(cs_get_user_team(id) == CS_TEAM_CT)
        {
            engclient_cmd(id, "drop", "weapon_usp")
        }
        else if(cs_get_user_team(id) == CS_TEAM_T)
        {
            engclient_cmd(id, "drop", "weapon_glock18")
        }
    }
}

public client_connected(id) {
    set_task(5.0, "connect_message")
}

public connect_message(id) {
    if( get_user_flags(id) & ADMIN_LEVEL_F ){
        client_printcolor(id, "^4Вы можете использовать команду ^3/vip")
        client_printcolor(id, "^4Покупка VIP прав -> ^3/wantvip")
        client_printcolor(id, "^4Покупка админки -> ^3/adminka")
    }
}

public show_mote(id) {
    show_motd(id,"vip.txt","Покупка VIP прав")
}

stock client_printcolor( const id, const input[], any:... )
{
    new count = 1, players[ 32 ]
    static msg[ 191 ]
    vformat( msg, 190, input, 3 )

    replace_all( msg, 190, "!g", "^4" ) // Green Color
    replace_all( msg, 190, "!n", "^1" ) // Default Color
    replace_all( msg, 190, "!t", "^3" ) // Team Color

    if( id ) players[ 0 ] = id; else get_players( players, count, "ch" )
    {
        for( new i = 0; i < count; i++ )
        {
            if( is_user_connected( players[ i ] ) )
            {
                message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "SayText" ), _, players[ i ] )
                write_byte( players[ i ] )
                write_string( msg )
                message_end()
            }
        }
    }
}

/* All rights reserved. Thank you for using the plugin */
Перейти в начало страницы     
Поблагодарили 2 раз
   +
WMP
сообщение 8.12.2012, 21:38
Сообщение #11
Стаж: 13 лет

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

Модуль cstrike забыл =\
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
underwoker
сообщение 9.12.2012, 10:12
Сообщение #12
Стаж: 56 лет


Благодарностей:

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