Заявка за Auto Map Change...

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
iv69
Извън линия
Потребител
Потребител
Мнения: 744
Регистриран на: 17 Мар 2018, 15:34
Се отблагодари: 214 пъти
Получена благодарност: 39 пъти

Заявка за Auto Map Change...

Мнение от iv69 » 12 Мар 2019, 11:00

Здравейте,

Трябва ми колкото се може по-опростен плъгин(доколкото е възможно) , който през определен интервал(примерно 30сек) да проверява колко живи играча има в сървъра, и ако броят им спадне под 3 ( 2, 1 или 0 играча) - автоматично да сменя картата на друга определена ( най-популярна- в случая за мен е awp_india) !? Плъгина ми трябва за DeathMatch сървър с PODBot (ако е от значение) .
Благодаря предварително !

Аватар
<VeCo>
Извън линия
AMXX Скриптър
AMXX Скриптър
Мнения: 145
Регистриран на: 28 Яну 2019, 19:01
Се отблагодари: 11 пъти
Получена благодарност: 80 пъти
Обратна връзка:

Заявка за Auto Map Change...

Мнение от <VeCo> » 12 Мар 2019, 18:26

Код за потвърждение: Избери целия код

#include <amxmodx>

#define MIN_PLAYERS 3
#define CHANGE_TIME 30.0
new const preferred_map[] = "awp_india"

new real_players_num = 0

public plugin_init()
{
    register_plugin("Auto Map Change", "1.1","<VeCo>")
    
    new current_map[sizeof preferred_map]
    get_mapname(current_map, charsmax(current_map))
    if(equal(current_map, preferred_map)) pause("ad")
}

public client_connect(id)
{
    if(is_user_bot(id)) return
    
    if(++real_players_num >= MIN_PLAYERS) remove_task()
    else if(real_players_num < MIN_PLAYERS && !task_exists()) start_task()
}
public client_disconnect(id) if(!is_user_bot(id) && --real_players_num < MIN_PLAYERS && !task_exists()) start_task()

public start_task() set_task(CHANGE_TIME, "change_map")
public change_map() server_cmd("amx_map ^"%s^"", preferred_map)
Ако ползваш АМХХ 1.8.3, замени client_disconnect с client_disconnected.
:pepo_think3:

Аватар
iv69
Извън линия
Потребител
Потребител
Мнения: 744
Регистриран на: 17 Мар 2018, 15:34
Се отблагодари: 214 пъти
Получена благодарност: 39 пъти

Заявка за Auto Map Change...

Мнение от iv69 » 12 Мар 2019, 20:03

<VeCo> написа: 12 Мар 2019, 18:26

Код за потвърждение: Избери целия код

#include <amxmodx>

#define MIN_PLAYERS 3
#define CHANGE_TIME 30.0
new const preferred_map[] = "awp_india"

new real_players_num = 0

public plugin_init()
{
    register_plugin("Auto Map Change", "1.1","<VeCo>")
    
    new current_map[sizeof preferred_map]
    get_mapname(current_map, charsmax(current_map))
    if(equal(current_map, preferred_map)) pause("ad")
}

public client_connect(id)
{
    if(is_user_bot(id)) return
    
    if(++real_players_num >= MIN_PLAYERS) remove_task()
    else if(real_players_num < MIN_PLAYERS && !task_exists()) start_task()
}
public client_disconnect(id) if(!is_user_bot(id) && --real_players_num < MIN_PLAYERS && !task_exists()) start_task()

public start_task() set_task(CHANGE_TIME, "change_map")
public change_map() server_cmd("amx_map ^"%s^"", preferred_map)
Ако ползваш АМХХ 1.8.3, замени client_disconnect с client_disconnected.
Ъхъ, Благодаря "VeCo". Ще направя това което ми обясни , но за момента няма как да го тествам, нека остане отворена темата за сега... За "жалост" имало и хора в сървъра :drunk: .

Добавено преди 8 минути 13 секунди:
iv69 написа: 12 Мар 2019, 19:55
<VeCo> написа: 12 Мар 2019, 18:26

Код за потвърждение: Избери целия код

#include <amxmodx>

#define MIN_PLAYERS 3
#define CHANGE_TIME 30.0
new const preferred_map[] = "awp_india"

new real_players_num = 0

public plugin_init()
{
    register_plugin("Auto Map Change", "1.1","<VeCo>")
    
    new current_map[sizeof preferred_map]
    get_mapname(current_map, charsmax(current_map))
    if(equal(current_map, preferred_map)) pause("ad")
}

public client_connect(id)
{
    if(is_user_bot(id)) return
    
    if(++real_players_num >= MIN_PLAYERS) remove_task()
    else if(real_players_num < MIN_PLAYERS && !task_exists()) start_task()
}
public client_disconnect(id) if(!is_user_bot(id) && --real_players_num < MIN_PLAYERS && !task_exists()) start_task()

public start_task() set_task(CHANGE_TIME, "change_map")
public change_map() server_cmd("amx_map ^"%s^"", preferred_map)
Ако ползваш АМХХ 1.8.3, замени client_disconnect с client_disconnected.
Ъхъ, Благодаря "VeCo". Ще направя това което ми обясни , но за момента няма как да го тествам, нека остане отворена темата за сега... За "жалост" имало и хора в сървъра :drunk: .
Но не ми "комилира" кода - ето грешките:

changemap.sma(1) : error 010: invalid function or declaration

1 Error.
Could not locate output file changemap.amx (compile failed).

Аватар
<VeCo>
Извън линия
AMXX Скриптър
AMXX Скриптър
Мнения: 145
Регистриран на: 28 Яну 2019, 19:01
Се отблагодари: 11 пъти
Получена благодарност: 80 пъти
Обратна връзка:

Заявка за Auto Map Change...

Мнение от <VeCo> » 12 Мар 2019, 20:06

Не си копирал кода правилно.
:pepo_think3:

Аватар
iv69
Извън линия
Потребител
Потребител
Мнения: 744
Регистриран на: 17 Мар 2018, 15:34
Се отблагодари: 214 пъти
Получена благодарност: 39 пъти

Заявка за Auto Map Change...

Мнение от iv69 » 12 Мар 2019, 21:32

<VeCo> написа: 12 Мар 2019, 20:06 Не си копирал кода правилно.
Да, моя е грешката, компилира се , копирало се е и : КОД: ИЗБЕРИ ВСИЧКИ... извинявам се, добре че вие скриптърите си разбирате :) !!!
А да попитам , видях , че освен client_disconnected има и надпис в кода client_connect - преправих го и него на client_connected - понеже съм със АМХХ 1.8.3 ...Нали не е грешка и далище работи или да остане само замяната която по-горе си посочил: client_disconnect с client_disconnected ???

Аватар
<VeCo>
Извън линия
AMXX Скриптър
AMXX Скриптър
Мнения: 145
Регистриран на: 28 Яну 2019, 19:01
Се отблагодари: 11 пъти
Получена благодарност: 80 пъти
Обратна връзка:

Заявка за Auto Map Change...

Мнение от <VeCo> » 12 Мар 2019, 22:03

iv69 написа: 12 Мар 2019, 21:32
<VeCo> написа: 12 Мар 2019, 20:06 Не си копирал кода правилно.
Да, моя е грешката, компилира се , копирало се е и : КОД: ИЗБЕРИ ВСИЧКИ... извинявам се, добре че вие скриптърите си разбирате :) !!!
А да попитам , видях , че освен client_disconnected има и надпис в кода client_connect - преправих го и него на client_connected - понеже съм със АМХХ 1.8.3 ...Нали не е грешка и далище работи или да остане само замяната която по-горе си посочил: client_disconnect с client_disconnected ???
client_connect не го пипай, той си е така

Стария disconnect не покриваше всички случаи, в АМХХ 1.8.3 го оправиха и добавиха още функционалност към него, но не знам защо са решили да направят нов вместо да променят стария...
:pepo_think3:

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

Заявка за Auto Map Change...

Мнение от OciXCrom » 12 Мар 2019, 22:22

client_connected не съществува. Има client_connectex, обаче не е нужно в този случай.
<VeCo> написа: 12 Мар 2019, 22:03но не знам защо са решили да направят нов вместо да променят стария...
Късно се сетиха, че може да направят това.

Аватар
<VeCo>
Извън линия
AMXX Скриптър
AMXX Скриптър
Мнения: 145
Регистриран на: 28 Яну 2019, 19:01
Се отблагодари: 11 пъти
Получена благодарност: 80 пъти
Обратна връзка:

Заявка за Auto Map Change...

Мнение от <VeCo> » 12 Мар 2019, 22:38

OciXCrom написа: 12 Мар 2019, 22:22 client_connected не съществува. Има client_connectex, обаче не е нужно в този случай.
<VeCo> написа: 12 Мар 2019, 22:03но не знам защо са решили да направят нов вместо да променят стария...
Късно се сетиха, че може да направят това.
Яко осрано тва API.
Викат "хаха dev версия сме нищо тука не е официално", да да добре, затова се правят на ощипани да си оправят тъпотиите да не вземат да развалят някой нов плъгин, който изпозва "нестабилна" версия на АМХХ... :headbang: :headbang:
:pepo_think3:

Аватар
iv69
Извън линия
Потребител
Потребител
Мнения: 744
Регистриран на: 17 Мар 2018, 15:34
Се отблагодари: 214 пъти
Получена благодарност: 39 пъти

Заявка за Auto Map Change...

Мнение от iv69 » 13 Мар 2019, 08:26

<VeCo> написа: 12 Мар 2019, 22:03
iv69 написа: 12 Мар 2019, 21:32
<VeCo> написа: 12 Мар 2019, 20:06 Не си копирал кода правилно.
Да, моя е грешката, компилира се , копирало се е и : КОД: ИЗБЕРИ ВСИЧКИ... извинявам се, добре че вие скриптърите си разбирате :) !!!
А да попитам , видях , че освен client_disconnected има и надпис в кода client_connect - преправих го и него на client_connected - понеже съм със АМХХ 1.8.3 ...Нали не е грешка и далище работи или да остане само замяната която по-горе си посочил: client_disconnect с client_disconnected ???
client_connect не го пипай, той си е така

Стария disconnect не покриваше всички случаи, в АМХХ 1.8.3 го оправиха и добавиха още функционалност към него, но не знам защо са решили да направят нов вместо да променят стария...
Благодаря ! Плъгина работи точно както исках ! Мога да го препоръчам и на останалите !!!
:lock:

Заключено
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Заявки за плъгини”

Кой е на линия

Потребители разглеждащи този форум: Bing [Bot], Google [Bot] и 23 госта