←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
Ustawienie cl_sidespeed 400 wszystkim graczom

  • +
  • -
RasiaQ - zdjęcie RasiaQ 11.11.2013

Witam,

Czy jest możliwość ustawienia wszystkim graczom cl_sidespeed 400 i cl_backspeed 400 i nawet jeśli gracz wpiszę komendę na więcej, to nic się nie zmieni ?

Odpowiedz

  • +
  • -
Wielkie Jol - zdjęcie Wielkie Jol 11.11.2013

jest możliwość, na przykład na początku rundy ustawiasz wszystkim graczom komendy za pomocą pętli for, następnie blokujesz wpisywanie komendy cl_sidespeed i cl_backspeed

Odpowiedz

  • +
  • -
RasiaQ - zdjęcie RasiaQ 11.11.2013

Mógłbyś dokładnie to wyjaśnić jak to zrobić ?

A jest możliwość zablokowania tego na stałe ?

Odpowiedz

  • +
  • -
Wielkie Jol - zdjęcie Wielkie Jol 11.11.2013

Nie wiem jaka jest wartość początkowa tych komend przy wejściu na serwer, a na stałe zmienianie tej komendy możesz zablokować tylko na swoim serwerze, więc jak tylko gracz wyjdzie, może ją sobie ponownie zmienić, dlatego proponowałbym na początku każdej rundy ustawiać cl_sidespeed i cl_backspeed 400 i następnie blokować zmienianie tej wartości. Potrzebna by Ci była jedna zmienna typu bool, która by sprawdzała czy jest nowa runda, i odblokowywała możliwość zmieniania wartości, następnie po zmienieniu znowu ją blokowała. Czyli na koniec rundy zmienna powinna przyjmować wartość false, a po rozpoczęciu i ustawieniu wartości wartość true

 

for(i=1; i<=get_maxplayers(); i++){
if(is_user_connected(i){
client_cmd(i, cl_sidespeed 400);
client_cmd(i, cl_backspeed 400);
}
}

 

Blokujesz za pomocą return plugin_handled.

 

Możesz także wymuszać komendy za pomocą pluginu d0naciaka.

 

#include <amxmodx>

new cvar_backspeed, cvar_forwardspeed, cvar_czas;

public plugin_init()
{
    register_plugin("Wymuszanie komend", "1.1", "d0n tHe Pr0oo");
    
    cvar_forwardspeed = register_cvar("cod_forwardspeed", "1000");
    cvar_backspeed = register_cvar("cod_backspeed", "400");
    cvar_czas = register_cvar("cod_tasktime", "5.0");
}

public client_putinserver(id)
    set_task(get_pcvar_float(cvar_czas), "WymusKomendy", id+333, _, _, "b");

public client_disconnect(id)
    remove_task(id+333);

public WymusKomendy(id)
{
    id -= 333;
    if(is_user_alive(id))
    {
        client_cmd(id, "cl_forwardspeed %i", get_pcvar_num(cvar_forwardspeed));
        client_cmd(id, "cl_backspeed %i", get_pcvar_num(cvar_backspeed));
    }
}
Odpowiedz

  • +
  • -
RasiaQ - zdjęcie RasiaQ 11.11.2013

Czyli wgrywając plugin d0naciaka będę musiał każdemu ustawiać sidespeed i backspeed ?

Odpowiedz

  • +
  • -
Wielkie Jol - zdjęcie Wielkie Jol 12.11.2013

Samo się będzie ustawiać, Ty jedynie musisz skonfigurować.

Odpowiedz

  • +
  • -
RasiaQ - zdjęcie RasiaQ 12.11.2013

Jeju przepraszam, że tak męczę, może nie rozumiem Twojego wcześniejszego postu, ale na czym ma polegać ta konfiguracja ?

Odpowiedz

Blood Angel - zdjęcie Blood Angel 13.11.2013

#include <amxmodx>

new cvar_backspeed, cvar_forwardspeed, cvar_czas;

public plugin_init()
{
    register_plugin("Wymuszanie komend", "1.1", "d0n tHe Pr0oo");
    
    cvar_sidespeed
= register_cvar("cod_sidespeed", "400");
    cvar_backspeed = register_cvar("cod_backspeed", "400");
    cvar_czas = register_cvar("cod_tasktime", "5.0");
}

public client_putinserver(id)
    set_task(get_pcvar_float(cvar_czas), "WymusKomendy", id+333, _, _, "b");

public client_disconnect(id)
    remove_task(id+333);

public WymusKomendy(id)
{
    id -= 333;
    if(is_user_alive(id))
    {
        client_cmd(id, "cl_sidespeed %i", get_pcvar_num(cvar_sidespeed));
        client_cmd(id, "cl_backspeed %i", get_pcvar_num(cvar_backspeed));
    }
}

 

Teraz tylko to skompiluj i masz wymuszanie automatyczne na każdym graczu na serwerze cl_sidespeed 400 i cl_forwardspeed 400.
 


Użytkownik Blood Angel edytował ten post 13.11.2013 08:07
Odpowiedz

Daj buziaka - zdjęcie Daj buziaka 13.11.2013

lepiej dodać cl_sidespeed, cl_backspeed oraz cl_forwardspeed

 

łap w załączniku oraz dodaj sobie komendy do amxx.cfg

cod_sidespeed "400" - szybkość chodzenia na boki
cod_backspeed "400" - szybkość chodzenia do tyłu
cod_forwardspeed "400" - szybkość chodzenia do przodu
cod_tasktime "5.0" - co ile sekund ma wymuszać komendy

Załączone pliki

Odpowiedz

  • +
  • -
RasiaQ - zdjęcie RasiaQ 13.11.2013

jeszcze jedno. Jeśli gracz wpisze wszystkie komendy na 400, to będzie musiał wpisywać je co 5 sekund ponownie, czy dopiero jak zmieni wartość na wyższa lub niższą ?
Odpowiedz

Daj buziaka - zdjęcie Daj buziaka 13.11.2013

co 5 sekund będzie mu ciągle zmieniało.

Odpowiedz

Blood Angel - zdjęcie Blood Angel 13.11.2013

Co za tym idzie jest to łatwe do ominięcia, więc polecam dać jak najniższą wartość do cod_tasktime.

Odpowiedz