Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

[ROZWIĄZANE] Grawitacja nie działa jak należy (gryzie się z inną grawitacją)


Najlepsza odpowiedź Wielkie Jol, 31.12.2013 13:43

/* Plugin generated by AMXX-Studio */

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

#define PLUGIN "xXPLUGINXx"
#define VERSION "1.0"
#define AUTHOR "Wielkie Jol"
new MAX;
public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_logevent("round_start", 2, "1=Round_Start");
}

public plugin_cfg()
    MAX=get_maxplayers()
public round_start(){
    server_cmd("sv_gravity 800");
    server_cmd("sv_gravity 200");
    set_hudmessage(255, 255, 255, -1.0, 0.25, 0, 1.0, 3.0, 0.01, 1.0, -1);
    show_hudmessage(0, "Grawitacja zmniejszona ,dobrze sie schowaj !");
    set_task(10.0,"norma");
}


public norma(){
    server_cmd("sv_gravity 800");
    for(new i=1;i<=MAX; i++){
        if(is_user_alive(i) && get_user_team(i) == 1){
            set_user_gravity(i, 0.625); // zombie
        }
        for(new i=1;i<=MAX; i++){
            if(is_user_alive(i) && get_user_team(i) == 2){
                set_user_gravity(i, 0.6875); // ct
            }
        }
    }
    set_hudmessage(255, 255, 255, -1.0, 0.25, 0, 1.0, 3.0, 10.0, 11.0, -1);
    show_hudmessage(0, "Grawitacja powrocila do normy, zaczynamy zabawe ! !");
}
Przejdź do postu


  • Zamknięty Temat jest zamknięty
9 odpowiedzi w tym temacie

#1 corel

    Profesjonalista

  • Użytkownik

Reputacja: 25
Życzliwy

  • Postów:216
  • GG:
  • Imię:Olek
  • Lokalizacja:Świdnica
Offline

Napisano 30.12.2013 20:48

Witam , jak w temacie mam taki prosty plugin :

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

#define PLUGIN "Grawitacja"
#define VERSION "1.0"
#define AUTHOR "Autor"


public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_logevent("Poczatek_Rundy", 2, "1=Round_Start")
}

public Poczatek_Rundy(){
    for(new i=1;i<33;i++){
        if(is_user_alive(i)){
            set_user_gravity(i,0.25)
            set_hudmessage(255, 0, 0, 0.30, 0.36, 0, 6.0, 10.0)
            show_hudmessage(0, "Grawitacja zmniejszona, dobrze sie schowaj !") 
           
        }
    }
    set_task(15.0,"gravityoff",1);
}

public gravityoff(){
    for(new i=1;i<33;i++){
        if(is_user_alive(i)){
            set_user_gravity(i,1.0)
            set_hudmessage(255, 0, 0, 0.30, 0.36, 0, 6.0, 10.0)
            show_hudmessage(0, "Grawitacja noramalna, zaczynamy gre !") 
        }
    }
}

I chodzi o to że gdy na serwerze gdy ludzie mają niestandardową grawitacje to niestety to nie działa. Przedstawie to na przykładzie serwera zombie mod :

podstawowa grawitacja - x

grawitacja zombie -x1

grawitacja z pluginu x2

Zaczyna się runda , każdy dostaje grawitacje x2 i tutaj wszystko jest ok , ale po 5 sekundach wybierany jest zombie i wtedy nie ma on grawitacji x2 tylko posiada x1 czyli taka jaką powinien mieć po po zakończeniu czasu pluginu . Natomiast po zakonczeniu czasu pluginu zombie posiada grawitacje x . W przypadku humana wszystko jest ok.

 

Czy ktoś potrafiłby to ogarnąć aby wszystko działało jak należy z grawitacją ? Jeżeli coś niejasne to proszę pisać bo miałem problem z wytłumaczeniem :D


  • +
  • -
  • 0

PCL.PL znowu powraca ! Zapraszam serdecznie :)


#2 corel

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 25
Życzliwy

  • Postów:216
  • GG:
  • Imię:Olek
  • Lokalizacja:Świdnica
Offline

Napisano 31.12.2013 03:48

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

#define PLUGIN "grawitacja"
#define VERSION "1.0"
#define AUTHOR "Corel"


public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	register_logevent("round_start", 2, "1=Round_Start");

	RegisterHam(Ham_Spawn, "player", "spawns", 1);

}

public round_start()
{
	set_cvar_num("sv_gravity",200);
	set_task(10.0,"norma");
	set_hudmessage(255, 255, 255, -1.0, 0.25, 0, 1.0, 3.0, 0.01, 1.0, -1);
	show_hudmessage(0, "Grawitacja zmniejszona ,dobrze sie schowaj !");
}

public norma()
{
	for(new i=0; i<=get_maxplayers(); i++)
		set_user_gravity(i, 1.0)

	set_hudmessage(255, 255, 255, -1.0, 0.25, 0, 1.0, 3.0, 10.0, 11.0, -1);
	show_hudmessage(0, "Grawitacja powrocila do normy, zaczynamy zabawe ! !");
}

public spawns(id)
{
	if(!is_user_alive(id))
		return PLUGIN_CONTINUE;
	
	if(get_user_team(id) == 1)
		set_user_gravity(id, 500.0/800.0);
	
	else if(get_user_team(id) == 2)
		set_user_gravity(id, 550.0/800.0);
	
	return PLUGIN_CONTINUE;
}

Ogarnąłem coś takiego z pomocą klakiera ( dziękuje ) i niestety nie zwraca mi grawitacji , cały czas jest zmniejszona.


  • +
  • -
  • 0

PCL.PL znowu powraca ! Zapraszam serdecznie :)


#3 Wielkie Jol

    REPREZENTUJE SIEBIE I CAŁĄ GALAKTYKĘ

  • Support Team

Reputacja: 683
Wszechmogący

  • Postów:1 258
  • GG:
  • Lokalizacja:AMXX
Offline

Napisano 31.12.2013 09:46

Czyli chcesz żeby grawitacja była zmieniana tylko ludziom? I po 15 sekundach ma im przywracać podstawową wartość? A co z zombiakami? bo nie zrozumiałem za bardzo szczerze mówiąc


  • +
  • -
  • 0

"Żaden etyczny inżynier oprogramowania nie zgodzi się napisać procedury zniszczBagdad. Jego poczucie etyki domaga się, aby napisał procedurę zniszczMiasto, a Bagdad przekazał jako parametr" - Nathaniel Borenstein.


#4 corel

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 25
Życzliwy

  • Postów:216
  • GG:
  • Imię:Olek
  • Lokalizacja:Świdnica
Offline

Napisano 31.12.2013 12:31

nie nie , juz tlumacze :) przez pierwsze 10 sekund grawitacja ma wynosić 200 dla wszystkich czy to zoombie(tt) czy to human(ct). Po 10 sekundach ma przywracać grawitacje : 500 dla zombie (tt) 550 dla humana(ct).


  • +
  • -
  • 0

PCL.PL znowu powraca ! Zapraszam serdecznie :)


#5 Wielkie Jol

    REPREZENTUJE SIEBIE I CAŁĄ GALAKTYKĘ

  • Support Team

Reputacja: 683
Wszechmogący

  • Postów:1 258
  • GG:
  • Lokalizacja:AMXX
Offline

Napisano 31.12.2013 12:52

/* Plugin generated by AMXX-Studio */

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

#define PLUGIN "xXPLUGINXx"
#define VERSION "1.0"
#define AUTHOR "Wielkie Jol"
new MAX;
public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_logevent("round_start", 2, "1=Round_Start");
}

public plugin_cfg()
    MAX=get_maxplayers()
public round_start(){
    server_cmd("sv_gravity 500");
    set_hudmessage(255, 255, 255, -1.0, 0.25, 0, 1.0, 3.0, 0.01, 1.0, -1);
    show_hudmessage(0, "Grawitacja zmniejszona ,dobrze sie schowaj !");
    set_task(10.0,"norma");
}


public norma(){
    for(new i=1;i<=MAX; i++){
        if(is_user_alive(i) && get_user_team(i) == 1){
            set_user_gravity(i, 0.625); // zombie
        }
        for(new i=1;i<=MAX; i++){
            if(is_user_alive(i) && get_user_team(i) == 2){
                set_user_gravity(i, 0.6875); // ct
            }
        }
    }
    set_hudmessage(255, 255, 255, -1.0, 0.25, 0, 1.0, 3.0, 10.0, 11.0, -1);
    show_hudmessage(0, "Grawitacja powrocila do normy, zaczynamy zabawe ! !");
}

zobacz czy cuś takiego zadziała, a powinno


Użytkownik Wielkie Jol edytował ten post 31.12.2013 12:53

  • +
  • -
  • 1

"Żaden etyczny inżynier oprogramowania nie zgodzi się napisać procedury zniszczBagdad. Jego poczucie etyki domaga się, aby napisał procedurę zniszczMiasto, a Bagdad przekazał jako parametr" - Nathaniel Borenstein.


#6 corel

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 25
Życzliwy

  • Postów:216
  • GG:
  • Imię:Olek
  • Lokalizacja:Świdnica
Offline

Napisano 31.12.2013 12:56

wrzucam na serwer , zaraz dam znać

//

Więc tak zaczyna się runda i ct ma grawitacje 550 a tt 500 , po 10 sekundach ich grawitacja sie zmniejsza nie wiem do ilu nie potrafie okresliic ale okolo 400 ? Wnioskujac : nie ma początkowej grawitacji , po 10 sekundach do 550 (ct) 500 (tt) dodaje się grawitacja             set_user_gravity(i, 0.625); // zombieset_user_gravity(i, 0.6875); // ct


Użytkownik corel edytował ten post 31.12.2013 13:05

  • +
  • -
  • 0

PCL.PL znowu powraca ! Zapraszam serdecznie :)


#7 Wielkie Jol

    REPREZENTUJE SIEBIE I CAŁĄ GALAKTYKĘ

  • Support Team

Reputacja: 683
Wszechmogący

  • Postów:1 258
  • GG:
  • Lokalizacja:AMXX
Offline

Napisano 31.12.2013 13:43   Najlepsza odpowiedź

/* Plugin generated by AMXX-Studio */

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

#define PLUGIN "xXPLUGINXx"
#define VERSION "1.0"
#define AUTHOR "Wielkie Jol"
new MAX;
public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_logevent("round_start", 2, "1=Round_Start");
}

public plugin_cfg()
    MAX=get_maxplayers()
public round_start(){
    server_cmd("sv_gravity 800");
    server_cmd("sv_gravity 200");
    set_hudmessage(255, 255, 255, -1.0, 0.25, 0, 1.0, 3.0, 0.01, 1.0, -1);
    show_hudmessage(0, "Grawitacja zmniejszona ,dobrze sie schowaj !");
    set_task(10.0,"norma");
}


public norma(){
    server_cmd("sv_gravity 800");
    for(new i=1;i<=MAX; i++){
        if(is_user_alive(i) && get_user_team(i) == 1){
            set_user_gravity(i, 0.625); // zombie
        }
        for(new i=1;i<=MAX; i++){
            if(is_user_alive(i) && get_user_team(i) == 2){
                set_user_gravity(i, 0.6875); // ct
            }
        }
    }
    set_hudmessage(255, 255, 255, -1.0, 0.25, 0, 1.0, 3.0, 10.0, 11.0, -1);
    show_hudmessage(0, "Grawitacja powrocila do normy, zaczynamy zabawe ! !");
}

  • +
  • -
  • 1

"Żaden etyczny inżynier oprogramowania nie zgodzi się napisać procedury zniszczBagdad. Jego poczucie etyki domaga się, aby napisał procedurę zniszczMiasto, a Bagdad przekazał jako parametr" - Nathaniel Borenstein.


#8 corel

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 25
Życzliwy

  • Postów:216
  • GG:
  • Imię:Olek
  • Lokalizacja:Świdnica
Offline

Napisano 31.12.2013 13:45

wyjaśnisz mi to :

    server_cmd("sv_gravity 800");
    server_cmd("sv_gravity 200");

bo nie rozumiem po co ?

//

dobra juz wiem , no zobaczymy jak to zadziala

//

na pierwszy rzut oka wszystko działa jak należy za jakąś godzinke lub dwie dam znać jak będe testował z kilkoma osobami , na razie plusiki i podziękowania za pomoc :)


Użytkownik corel edytował ten post 31.12.2013 13:52

  • +
  • -
  • 0

PCL.PL znowu powraca ! Zapraszam serdecznie :)


#9 Wielkie Jol

    REPREZENTUJE SIEBIE I CAŁĄ GALAKTYKĘ

  • Support Team

Reputacja: 683
Wszechmogący

  • Postów:1 258
  • GG:
  • Lokalizacja:AMXX
Offline

Napisano 31.12.2013 14:04

Zrobiłem to po to, by była ustawiona najpierw podstawowa grawitacja, a następnie zmieniona, myślę, że to wielkiej różnicy w kodzie nie robi, a chyba ma znaczenie w działaniu.


  • +
  • -
  • 1

"Żaden etyczny inżynier oprogramowania nie zgodzi się napisać procedury zniszczBagdad. Jego poczucie etyki domaga się, aby napisał procedurę zniszczMiasto, a Bagdad przekazał jako parametr" - Nathaniel Borenstein.


#10 corel

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 25
Życzliwy

  • Postów:216
  • GG:
  • Imię:Olek
  • Lokalizacja:Świdnica
Offline

Napisano 31.12.2013 14:26

Tak już rozumiem , wszystko działa jak należy a nawet lepiej :) Później jeszcze przetestuje z kilkoma osobami


  • +
  • -
  • 0

PCL.PL znowu powraca ! Zapraszam serdecznie :)





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych