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

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

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

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

Идея для плагина

, посоветуйте
Статус пользователя n-magneto
сообщение 23.1.2013, 22:53
Сообщение #1
Стаж: 14 лет

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

Здравствуйте thank_you2.gif , подкиньте идею для написания плагина, от скутоты решил написать, желательно что-то не очень сложное, так как я еще набираю опыт. Буду рад выслушать любую идею. Зарание Спасибо.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Andrei
сообщение 23.1.2013, 23:14
Сообщение #2


Стаж: 15 лет

Сообщений: 1335
Благодарностей: 693
Полезность: 740

Придумай какие нибудь способности рандомно выдаемые одному кт\т в начале раунда.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя n-magneto
сообщение 24.1.2013, 0:04
Сообщение #3
Стаж: 14 лет

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

Вот, проверяйте, не тестил, но думаю проблем не должно быть. С фантазией как вы поняли у меня плохо, смог придумать только 3 способности:
1)XP+AP
2)Invisibility
3)No Recoil
Если кто желает, говорите способность постараюсь сделать, и залью с новой способностью.
Исходник
Код
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <dhudmessage>

#define PLUGIN "Ability To Round"
#define VERSION "1.0"
#define AUTHOR "magneTo"

#define HEALTH     400
#define ARMOR           100

new g_maxplayers;
new bool:g_ability[33],g_norecoil[33];
new float:g_nook[3] = {0.0,0.0,0.0}

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_event("HLTV", "event_round_start", "a", "1=0", "2=0");
    register_logevent("event_round_end",2,"1=Round_End");
    register_forward(FM_PlayerPreThink,"func_prethink");
    g_maxplayers = get_maxplayers( );
}

public event_round_start()
    set_task(1.0,"give_ability")

public event_round_end()
{
    static id;
    
    for(id = 1;id<=g_maxplayers;id++)
    {
        if( !is_user_connected(id) || !g_ability[id] )
            continue;

        g_ability[id] = false;
        g_norecoil[id] = false;
        set_user_rendering(id, kRenderFxHologram, 0, 0, 0, kRenderTransAlpha, 255)
    }
}
    
public give_ability(id)
{        
    new id
    static iNum
    iNum = alive()
    id = random_alive(random_num(1, iNum))    
    g_ability[id] = true

}

public random_ability(id)
{
    new rand = random_num(1, 3)
    switch(rand){
        case 1: {
                dhud(id,"%s получил способность: XP+AP");
                set_user_health(id, get_user_health(id) + HEALTH);
                set_user_armor(id, get_user_armor(id) + ARMOR)
        }
        case 2: {
                dhud(id,"%s получил способность: Invisibility");
                set_user_rendering(id, kRenderFxHologram, 0, 0, 0, kRenderTransAlpha, 150);
        }
        case 3: {
                dhud(id,"%s получил способность: No Recoil");
                g_norecoil[id] = true
        }
        }
}

public func_prethink(id)
{
    if(!is_user_alive(id) && !g_norecoil[id] && !g_ability[id])
        return;
    
    set_pev(id,pev_punchangle,g_nook);
}

random_alive(n)
{
    static iAlive, id
    iAlive = 0
    
    for (id = 1; id <= g_maxplayers; id++)
    {
        if (is_user_alive(id))
            iAlive++
        
        if (iAlive == n)
            return id;
    }
    
    return -1;
}

alive()
{
    static iAlive, id
    iAlive = 0
    
    for (id = 1; id <= g_maxplayers; id++)
    {
        if (is_user_alive(id))
            iAlive++
    }
    
    return iAlive;
}

stock dhud(id,text[])
{
    new szName[ 32 ]
    get_user_name(id, szName, 31)
    set_dhudmessage(0, 255, 0, 0.05, 0.45, 1, 0.0, 5.0, 1.0, 5.0)
    show_dhudmessage(0, text, szName)
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Andrei
сообщение 24.1.2013, 0:12
Сообщение #4


Стаж: 15 лет

Сообщений: 1335
Благодарностей: 693
Полезность: 740

Код конечно у тебя хардкорный,лучше какие нибудь скилы,мб в радиусе сжигает врагов или еще что нибудь,а то это не серьезно :р
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя n-magneto
сообщение 24.1.2013, 0:14
Сообщение #5
Стаж: 14 лет

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

Bos93,
Цитата
Код конечно у тебя хардкорный
Это как понять) Нубо код?) Если не сложно скажи что не так, чтоб в будуищем не допускать такого

Отредактировал: n-magneto, - 24.1.2013, 0:25
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Andrei
сообщение 24.1.2013, 0:42
Сообщение #6


Стаж: 15 лет

Сообщений: 1335
Благодарностей: 693
Полезность: 740

Не приятно твой код читать,кое где не форматировано,думаю кодиш копипастом,как лепиш тесто)

Могу посоветовать не использовать Рациональный стиль написания,на мой счет,он просто убог и не приятен и лучший стил,это Стиль Алмена,на мой счет,он удобней читаем и приятен.

http://www.softtime.ru/info/articlephp.php?id_article=28

Отредактировал: Bos93, - 24.1.2013, 0:43
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
cs-portal
сообщение 24.1.2013, 2:29
Сообщение #7
Стаж: 16 лет

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

можно выдавать спидхак стрельбу или спидхак нож.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя n-magneto
сообщение 24.1.2013, 7:48
Сообщение #8
Стаж: 14 лет

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

Вроде и пытаюсь кодить стилем Алмена, тоже советовали, только в switch(rand) смотрел чёт не сделал как надо, а насчёт копипаста, то я взял из кода героя, рандомный выбор, а все остальное сам. Может со временим смогу и без всякого копипаста)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: