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

Human Class Nie czyta w nastepnej rundzie

Human class zombie mod

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
5 odpowiedzi w tym temacie

#1 Materialna

    Początkujący

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:19
  • Imię:Dawid
  • Lokalizacja:Polska
Offline

Napisano 15.10.2011 08:11

Witam !
Czy mogłby ktoś zorobić tak aby klasa Ludzi zapisywała się na cała mape, bo teraz wybieramy klase i przeżyjemy mamy ją w nastepnej rundzie ale gdy zarazi nas zombi klasa przepada i trzeba od nowa ja wybrać może ktoś mi pomoc i dodać w tym menu, że klasa wybieramy raz na cała mape i sie zapisuje nawet jeśli zarazi nas zombi i, że jak wybierzemy nową klase to wyskoczy komunikat "Twoja klasa zostanie zmieniona w nastepnej rundzie".
Dzięki z góry proszę o odpowiedź.

/*
Human Classes for zombie plague, menu for classes automatically invoked 8 seconds after player spawn
This plug is far from complete, please help with further development of it since it may have some undesired
results on gameplay. You can edit this plug however it fit your needs.
 
Here is TO DO list:
 
1. Make B key invoke human class menu
2. Make user choose class only once per round (could be limited with round timer or some other method) - done
3. Make user choice remember thru whole map time, just like it was done for zombies
4. Changing of models is not implemented yet due to numerous bugs and uncertain effects
5. For now, there are 7 classes only. If you have idea for more classes, make a request
6. Make classes buyable for ammo packs
7. Bots support
*/
 
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
#include <zombieplague>
 
 
new g_player_class[33]
 
public plugin_init()
{
		register_plugin("[ZP] Addon: Human Classes", "1.1", "fiendshard")
		RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1)
		register_event( "HLTV", "NewRound", "a", "1=0", "2=0" );
		register_clcmd("postac", "human_menu")
}
public NewRound()
{
		for(new id=1;id<32;id++)
		{
				if (is_user_connected(id) && is_user_alive(id) && cs_get_user_team(id) && CS_TEAM_CT)
				{
						switch(g_player_class[id])
						{
								case 1: g_player_class[id] = 1
								case 2: g_player_class[id] = 2
								case 3: g_player_class[id] = 3
								case 4: g_player_class[id] = 4
								case 5: g_player_class[id] = 5
						}
				}
		}
}
 
 
public human_menu(id)
{
  new menu = menu_create("\rWybierz swoja klase ludzi:", "human_menu_handler")
  menu_additem(menu, "\Skoczek (Grawitacja)", "1", 0)
  menu_additem(menu, "\Sprinter(Szybkosc)", "2", 0)
  menu_additem(menu, "\Grubson (HP)", "3", 0)
  menu_additem(menu, "\Obronca Krzyza (Armor)", "4", 0)
  menu_additem(menu, "\X-Men (Premium)", "5", ADMIN_LEVEL_H)
  menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
  menu_display(id, menu, 0)
 
}
public human_menu_handler(id, menu, item)
{
if( item == MENU_EXIT )
{
  menu_destroy(menu)
  return PLUGIN_HANDLED
}
new data[6], iName[64]
new access, callback
menu_item_getinfo(menu, item, access, data, 5, iName, 63, callback)
new key = str_to_num(data)
switch(key)
{
  case 1:
  {
   if(zp_get_user_zombie(id) || zp_get_user_survivor(id) || zp_get_user_nemesis(id)) return PLUGIN_HANDLED;
   g_player_class[id] = 1
   set_user_health(id, get_cvar_num("zp_human_health"))
   set_user_armor(id, 20)
   set_user_gravity(id, 0.80)
   client_print(id, print_chat,"[ZP] Twoja klasa to: Skoczek (Grawitacja)")
  }
  case 2:
  {
   if(zp_get_user_zombie(id) || zp_get_user_survivor(id) || zp_get_user_nemesis(id)) return PLUGIN_HANDLED;
   g_player_class[id] = 2
   set_user_health(id, 100)
   set_user_armor(id, 30)
   set_user_gravity(id, 1.00)
   client_print(id, print_chat,"[ZP] Twoja klasa to: Sprinter(Szybkosc)");
  }
  case 3:
  {
   if(zp_get_user_zombie(id) || zp_get_user_survivor(id) || zp_get_user_nemesis(id)) return PLUGIN_HANDLED;
   g_player_class[id] = 3
   set_user_health(id, 250)
   set_user_armor(id, 20)
   set_user_gravity(id, 1.00)
   client_print(id, print_chat,"[ZP] Twoja klasa to: Grubson (HP)");
  }
  case 4:
  {
   if(zp_get_user_zombie(id) || zp_get_user_survivor(id) || zp_get_user_nemesis(id)) return PLUGIN_HANDLED;
   g_player_class[id] = 4
   set_user_health(id, get_cvar_num("zp_human_health"))
   set_user_armor(id, 50)
   set_user_gravity(id, 1.00)
   client_print(id, print_chat,"[ZP] Twoja klasa to: Obronca Krzyza (Armor)");
  }
  case 5:
  {
   if(zp_get_user_zombie(id) || zp_get_user_survivor(id) || zp_get_user_nemesis(id)) return PLUGIN_HANDLED;
   g_player_class[id] = 5
   set_user_health(id, get_cvar_num("zp_human_health"))
   set_user_armor(id, 150)
   set_user_gravity(id, 0.80)
   client_print(id, print_chat,"[ZP] Twoja klasa to: X-Men (Premium)")
  }
}
menu_destroy(menu)
return PLUGIN_HANDLED
}

Za pomoc, chetnie daje ++

~~~Refresh~~~
Albo może ma ktoś inne Klasy Human do ZombiePlague 4.3 ? nagrodze ++
  • +
  • -
  • 0

#2 ELOS

    No i pozamiatane ;*

  • Power User

Reputacja: 145
Zaawansowany

  • Postów:703
  • GG:
  • Imię:Kamil
  • Lokalizacja:Będzin
Offline

Napisano 15.10.2011 08:18

masz moje sma ; p

Załączone pliki


Użytkownik ELOS edytował ten post 15.10.2011 08:18

  • +
  • -
  • 0

[Aktualizacja 22.01.2015] GunXpMod 2.7.4

http://wklej.to/vlMW7


#3 byCZUS

    Listonosz

  • Support Team

Reputacja: 752
Guru

  • Postów:459
  • GG:
  • Steam:steam
  • Lokalizacja:GW
Offline

Napisano 15.10.2011 08:57

Może się przyda takie lekkie API co do dodawania klas, wystarczy pododawać w stałych i tyle :]

#include <amxmodx>
#include <hamsandwich>
#include <fakemeta_util>
#include <zombieplague>

new g_player_class[33]

new const klasy[][] = {
{ ADMIN_LEVEL_A, "Skoczek (Grawitacja)" },
{ ADMIN_ALL, "Sprinter(Szybkosc)" },
{ ADMIN_ALL, "Grubson (HP)" },
{ ADMIN_ALL, "Obronca Krzyza (Armor)" },
{ ADMIN_LEVEL_H, "X-Men (Premium)" }
}
new const zycie[] = { 100, 100, 250, 100, 100 }
new const armor[] = { 20, 30, 20, 50, 150 }
new const Float: grawa[] = { 0.8, 1.0, 1.0, 1.0, 0.8 }

public plugin_init() {
register_plugin("[ZP] Addon: Human Classes", "1.1", "byCZEK");
RegisterHam(Ham_Spawn, "player", "HamSpawn", 1);

register_clcmd("say /postac", "human_menu");
}

public client_connect(id) {
g_player_class[id] = -1;
}

public HamSpawn(id) {
if(!is_user_alive(id))
return HAM_IGNORED;

if(g_player_class[id] == -1) human_menu(id);
else SprawdzMoce(id);

return HAM_IGNORED;
}

public human_menu(id) {
new menu = menu_create("\rWybierz swoja klase ludzi:", "human_menu_handler");

for(new i = 0; i < sizeof(klasy); i++) {
menu_additem(menu, klasy[i][1], _, _, menu_makecallback("human_menu_"));
}

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu, 0);

}

public human_menu_(id, menu, item) {
if((get_user_flags(id) & klasy[item][0]) != klasy[item][0] || item == g_player_class[id])
return ITEM_DISABLED;

return ITEM_ENABLED;
}

public human_menu_handler(id, menu, item) {
if(item == MENU_EXIT || zp_get_user_zombie(id) || zp_get_user_survivor(id) || zp_get_user_nemesis(id)) {
menu_destroy(menu)
return PLUGIN_HANDLED
}

if(g_player_class[id] == -1) {
g_player_class[id] = item;
SprawdzMoce(id);
client_print(id, print_chat,"[ZP] Twoja klasa to: %s.", klasy[item][1]);

} else {
g_player_class[id] = item;
client_print(id, print_chat,"[ZP] Twoja nowa klasa to: %s, poczekaj na nowa runde.", klasy[item][1]);
}

menu_destroy(menu);
return PLUGIN_HANDLED;
}

public SprawdzMoce(id) {
new k = g_player_class[id];

fm_set_user_health(id, zycie[k]);
fm_set_user_armor(id, armor[k]);
fm_set_user_gravity(id, grawa[k]);
}

Użytkownik byCZUS edytował ten post 15.10.2011 08:59

  • +
  • -
  • 1

Dziękuje, dobranoc.


#4 Materialna

    Początkujący

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:19
  • Imię:Dawid
  • Lokalizacja:Polska
Offline

Napisano 20.10.2011 10:10

dzięki, wszystko działa, tylko mam jeszcze pare pytań :
1. Jak zrobić zeby X-men był na biało a (premium) na czerwono a w pozostałych klasach wszystko co jest w nawiasach było na żołto, co dodać przed nazwą klasy ?
2. Jak ustawic zeby klasa Sprinter była szybsza, bo biega tak jak inne, widze tutaj armor, zycie, grawe a speeda nie ma.
3. Czy
{ ADMIN_LEVEL_A, "Skoczek (Grawitacja)" }, ADMIN_LEVEL_A oznacza że klasa jest dla osob z flagą A (immunited) ?

~~Refresh~~
Proszę o pomoc, chętnie dam ++

~~Refresh~~
Proszę, bardzo tego potrzebuje, chociaż jak zmienić kolor tego tekstu i ustawic speed dla klasy Sprinter, 3 sam zrobiłem.

byCZUS mam jeszcze do Ciebie sprawe, zrobiłeś plugin, wszystko mniej wiecej jest okej, tylko jest 1 problem, teraz kazde zombi po odrodzeniu ma 100 hp, dzieje się tak przez Human class, ponieważ wyłaczyłem human class i bylo git, byCZUS moglbys to poprawic, dam kolejny ++ Proszę.

~~Refresh~~
Bardzo mi to jest potrzebne, i wielu innym tez, dam ++

Użytkownik Materialna edytował ten post 19.10.2011 14:50

  • +
  • -
  • 0

#5 byCZUS

    Listonosz

  • Support Team

Reputacja: 752
Guru

  • Postów:459
  • GG:
  • Steam:steam
  • Lokalizacja:GW
Offline

Napisano 20.10.2011 16:26

zamień

public HamSpawn(id) {
if(!is_user_alive(id))
return HAM_IGNORED;

if(g_player_class[id] == -1) human_menu(id);
else SprawdzMoce(id);

return HAM_IGNORED;
}


na
public HamSpawn(id) {
if(!is_user_alive(id) || zp_get_user_zombie(id))
return HAM_IGNORED;

if(g_player_class[id] == -1) human_menu(id);
else SprawdzMoce(id);

return HAM_IGNORED;
}

  • +
  • -
  • 1

Dziękuje, dobranoc.


#6 Materialna

    Początkujący

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:19
  • Imię:Dawid
  • Lokalizacja:Polska
Offline

Napisano 21.10.2011 11:47

Działa, dzięki daje kolejny ++, byś mogł rozwiazać jeszcze ten problem z szybkoscia sprintera i powiedziec jak zrobic kolorowy napis ?

~~Refresh~~
Chodzi mi glownie o ten kolorowy napis, bardzo tego potrzebuje, dam ++
Wystarczy ze ktos mi poda przyklad jak to zrobic, reszte zrobie sam.
  • +
  • -
  • 0




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

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