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

GodMode, pasek.


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

#1 Screeaam...

    ; ooo

  • Zbanowany

Reputacja: 154
Profesjonalista

  • Postów:1 012
  • Lokalizacja:Sosnowiec
Offline

Napisano 10.04.2010 22:45

Witam, zrobiłem item nieśmiertelność:

/* ==================================================================================================== */
public gdmode(id){
       if (used_item[id])
       {
		hudmsg(id,2.0,"Niesmiertelnosc mozesz uzyc raz na runde!")
		return PLUGIN_CONTINUE
       }
       if (get_user_button(id) & IN_USE && button[id]==0)
       {
       button[id]=1;
       set_user_godmode(id, 1)
       hudmsg(id,2.0,"Niesmiertelnosc zostala aktywowana!")
       if(!task_exists(id))
       set_task(5.0, "fnOFF", id);
       }
       used_item[id] = true    
       return PLUGIN_CONTINUE
}
/* ==================================================================================================== */

Raz na rundę można użyć, trwa 5 sekund. Jak dorobić do niego pasek ładowania (Czyli leci pasek taki jak przy rozbrajaniu od włączenia do wyłączenia)? Oraz jak przerobić, aby gdy robię item, to piszę tak:


player_b_godmode[id] == tutaj czas jak długo można go użyć

Po drugie, jeżeli dodam do tego:

set_user_maxspeed(id,get_user_maxspeed(id)+500.0)

To w funkcji wyłączającej jaki mam dać parametr do szybkości, taki:

set_user_maxspeed(id,get_user_maxspeed(id)+1.0)

Czy to będzie błędne?

Użytkownik Screeaam... edytował ten post 10.04.2010 23:37


#2 Tomi

    Wszechwidzący

  • Zbanowany

Reputacja: 8
Nowy

  • Postów:271
Offline

Napisano 11.04.2010 00:17

/* ==================================================================================================== */
public gdmode(id){
       if (used_item[id])
       {
		hudmsg(id,2.0,"Niesmiertelnosc mozesz uzyc raz na runde!")
		return PLUGIN_CONTINUE
       }
       if (get_user_button(id) & IN_USE && button[id]==0)
       {
       button[id]=1;
       set_user_godmode(id, 1)
       hudmsg(id,2.0,"Niesmiertelnosc zostala aktywowana!")
       if(!task_exists(id))
       set_task(5.0, "fnOFF", id);
       }
       used_item[id] = true    
       return PLUGIN_CONTINUE
}
/* ==================================================================================================== */

Popraw z
public gdmode(id){

na

public godmode(id){


#3 Screeaam...

    ; ooo

  • Autor tematu
  • Zbanowany

Reputacja: 154
Profesjonalista

  • Postów:1 012
  • Lokalizacja:Sosnowiec
Offline

Napisano 11.04.2010 00:20

/* ==================================================================================================== */
public gdmode(id){
       if (used_item[id])
       {
		hudmsg(id,2.0,"Niesmiertelnosc mozesz uzyc raz na runde!")
		return PLUGIN_CONTINUE
       }
       if (get_user_button(id) & IN_USE && button[id]==0)
       {
       button[id]=1;
       set_user_godmode(id, 1)
       hudmsg(id,2.0,"Niesmiertelnosc zostala aktywowana!")
       if(!task_exists(id))
       set_task(5.0, "fnOFF", id);
       }
       used_item[id] = true    
       return PLUGIN_CONTINUE
}
/* ==================================================================================================== */

Popraw z
public gdmode(id){

na

public godmode(id){


Nie wiesz, nie pisz, specjalnie funkcję nazwałem gdmode. >.> Nazwa funkcji nie ma nic do znaczenia. -.-

//Swoją drogą, wszystko działa, tylko chcę ten pasek dorobić.

Użytkownik Screeaam... edytował ten post 11.04.2010 00:20


#4 Vertricus

    Godlike

  • Przyjaciel

Reputacja: 426
Wszechobecny

  • Postów:1 549
  • Lokalizacja:.
Offline

Napisano 11.04.2010 00:25

w diablo jest stock msg_bartime :&
Tam jest struktura :>
  • +
  • -
  • 0

#5 Screeaam...

    ; ooo

  • Autor tematu
  • Zbanowany

Reputacja: 154
Profesjonalista

  • Postów:1 012
  • Lokalizacja:Sosnowiec
Offline

Napisano 12.04.2010 19:02

Coś takiego:
message_begin( MSG_ONE, gmsgBartimer, {0,0,0}, id ) 
       write_byte( player_b_godmode[id]+4 ) 
       write_byte( 0 ) 
       message_end()

Czyli takie coś:
/* ==================================================================================================== */
public gdmode(id){
       if (used_item[id])
       {
		hudmsg(id,2.0,"Niesmiertelnosc mozesz uzyc raz na runde!")
		return PLUGIN_CONTINUE
       }
       if (get_user_button(id) & IN_USE && button[id]==0)
       {
       button[id]=1;
       set_user_godmode(id, 1)
       show_hudmessage(id, "Niesmiertelnosc zostala aktywowana!")
       if(!task_exists(id))
       set_task(5.0, "fnOFF", id);
       message_begin( MSG_ONE, gmsgBartimer, {0,0,0}, id ) 
       write_byte( player_b_godmode[id]+4 ) 
       write_byte( 0 ) 
       message_end() 
       }
       used_item[id] = true    
       return PLUGIN_CONTINUE
}
/* ==================================================================================================== */

Będzie dobre?


//Edit:

Dobra, pasek działa.. Ale jak zrobic, aby informacja, czy GodMode ma się włączonego i wyłączonego pokazywała się w chacie, ale tylko dla jednej osoby (używającej) na kolorowo? Oraz jak zrobić tą prędkość gracza? Wiem jak ją ustawić, ale jak zrobić, aby potem była prędkość standardowa?

//Edit2:

Z tym napisem chyba wiem, pójdzie coś taiego:

new name[32]
	get_user_name(id, name, 31)
        ColorChat(id, GREEN,"^x04[DiabloMod][%s]^x01 Niesmiertelnosc zostala aktywowana", name)

Czy wtedy będzie widziała to osoba używająca? Bo dałem zamiast 0 id.

No i co z tą szybkością?

11 kwiecień 2010 - 02:17:
Okey, mam kilka pytań:

Czy tak funkcja jest dobra:

if(player_speedis[id] > 0)
        {
                set_user_maxspeed(id,get_user_maxspeed(id)+player_speedis[id])
        }

Wtedy przy robieniu itemu w:

player_speedis[id] = wartość szybkości

Dobrze to jest?

2. Jak zrobić, aby np. co 3 sekundy leczyło 50hp?

11 kwiecień 2010 - 17:53:
Powie ktoś, jeżeli wpiszę set_user_maxspeed(id, 1,0) to bd standardowa prędkość klasy?

12 kwiecień 2010 - 19:02:
Nast. pytanie.


Jak zrobić, aby gdy klasa ma mniej niż 100 hp dodaje mu 700 speeda, zrobiłem tak i wpakowałem do prethink:

                if(player_class[id] == Fernando && get_user_health(id) < 100)
                {
                        set_user_maxspeed(id,get_user_maxspeed(id)+700.0)
                        new name[32]
			get_user_name(id, name, 31) 
		        ColorChat(id, GREEN, "^x04[DiabloMod][%s]^x01Szarza zostala ^x03wlaczona", name)
                }

Lecz po pewnym czasie wywala osoby z serwa. :/

Użytkownik Screeaam... edytował ten post 12.04.2010 19:03


#6 Valito

    Zaawansowany

  • Użytkownik

Reputacja: 11
Początkujący

  • Postów:89
  • Lokalizacja:Szczecin
Offline

Napisano 12.04.2010 20:14

Screeam, jak zrobiłem własny kod podobny do twojego nie wyłączał się godmone. U ciebie wszystko działa? Bo mi się wydaje że taskiem powinieneś to wyłączyć
  • +
  • -
  • 0
Zapraszam na www.deadly7sins.pl Diablo mod

#7 Screeaam...

    ; ooo

  • Autor tematu
  • Zbanowany

Reputacja: 154
Profesjonalista

  • Postów:1 012
  • Lokalizacja:Sosnowiec
Offline

Napisano 12.04.2010 21:16

Screeam, jak zrobiłem własny kod podobny do twojego nie wyłączał się godmone. U ciebie wszystko działa? Bo mi się wydaje że taskiem powinieneś to wyłączyć



Tak, bo zrobiłem osobną funkcję, która wyłącza GodMode i aktywuje ją taskiem. :X

U mnie działa elegancko.

Przecież mam task. :X
set_task(5.0, "fnOFF", id);

12 kwiecień 2010 - 21:16:


Okej, zrobiłem tak:

if(player_class[id] == Fernando && get_user_health(id) < 100)
{
set_renderchange(id)
set_user_maxspeed(id,get_user_maxspeed(id)+600.0)
}
else if(player_class[id] == Fernando && get_user_health(id) > 150)
{
set_renderchange(id)
set_user_maxspeed(id,270.0)
}


1. Ale jak zrobić, aby co 3 sekundy się leczył po 10hp aż nie osiągnie 150hp? Bo jak dodam taska do prethinku, to od razu robi mi max hp. :/

2. Jak zrobić, że jak się wciśnie E to teleportuje do spawnu?

Dodałem to do prethinku.

Użytkownik Screeaam... edytował ten post 12.04.2010 22:55





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

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