←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Klasy

Zablokowany

  • +
  • -
ShoWmaN - zdjęcie ShoWmaN 18.12.2010

Witam chciałbym zrobić plugin, który umożliwia wybór klas ale nie wiem jak się za to za bardzo zabrać xD.
Nie chodzi mi o kopiowanie cod'a czy diablo. Mają to być zwykłe klasy, które mają wybrane bronie bez punktów doświadczenia itd.
Odpowiedz

  • +
  • -
daniosik - zdjęcie daniosik 18.12.2010

Zobacz to:
/* Plugin generated by AMXX-Studio */

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

#define PLUGIN "Klasy"
#define VERSION "1.0"
#define AUTHOR "Daniosik"

new const Klasa[4][] = {
"Brak",
"Kapral",
"General",
"Szeregowy"
}

new KlasaGracza[33]

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

register_clcmd("say /klasa", "Wybierz_Klase")
register_event("ResetHUD", "doklas", "be")

}


public MyMenu(id)
{
new menu = menu_create("Tytul", "MyMenu_handler")
menu_additem(menu, "\wKapral", "1", 0)
menu_additem(menu, "\wGeneral", "2", 0)
menu_additem(menu, "\wSzeregowy", "3", 0)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, menu, 0)
}

public MyMenu_handler(id, menu, item)
{
if (item == MENU_EXIT)
{
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:
{
KlasaGracza[id] = 1
}
case 2:
{
KlasaGracza[id] = 2
}
case 3:
{
KlasaGracza[id] = 3
}

}
menu_destroy(menu)
return PLUGIN_HANDLED
}

public doklas(id, item)
{
if(KlasaGracza[id] == 1)
{
set_user_health(id, 120)
give_item(id, "CSW_M4A1")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
}
if(KlasaGracza[id] == 2)
{
set_user_health(id, 150)
give_item(id, "CSW_AK47")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
}
if(KlasaGracza[id] == 3)
{
set_user_health(id, 100)
give_item(id, "weapon_mp5navy")
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
}
}

public PokazInformacje(id)
{

set_task(0.1, "PokazInformacje", id)
if(!is_user_alive(id))
return PLUGIN_CONTINUE

set_hudmessage(255, 0, 0, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0)
show_hudmessage(id, "Klasa: %i", Klasa[KlasaGracza[id]])

return PLUGIN_CONTINUE;
}
Odpowiedz

  • +
  • -
ShoWmaN - zdjęcie ShoWmaN 18.12.2010

A jak chce se dodać 4 klasę to tylko w public MyMenu_handler(id, menu, item)
dopisać

case 4:
{
KlasaGracza[id] = 4
}

i w public doklas

if(KlasaGracza[id] == 4)
{
set_user_health(id, 100)
give_item(id, "weapon_mp5navy")
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
}
}

i nazwe klasy
???

A i plusik ;]
Użytkownik ShoWmaN edytował ten post 18.12.2010 10:19
Odpowiedz

Zaszka - zdjęcie Zaszka 18.12.2010

Dziala wam to bo mi cos nie ;/
Odpowiedz

  • +
  • -
ShoWmaN - zdjęcie ShoWmaN 18.12.2010

Nie wiem jeszcze nie sprawdzałem ;D
A co ci nie działa? nie kompiluje się?

No fakt nie działa.
Użytkownik ShoWmaN edytował ten post 18.12.2010 11:50
Odpowiedz

  • +
  • -
daniosik - zdjęcie daniosik 18.12.2010

Sorry, ale zapomniałem czegoś zmienić teraz powinno być git:
/* Plugin generated by AMXX-Studio */

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

#define PLUGIN "Klasy"
#define VERSION "1.0"
#define AUTHOR "Daniosik"

new const Klasa[4][] = {
"Brak",
"Kapral",
"General",
"Szeregowy"
}

new KlasaGracza[33]

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

register_clcmd("say /klasa", "Wybierz_Klase")
register_event("ResetHUD", "doklas", "be")

}


public Wybierz_Klase(id)
{
new menu = menu_create("Kim chcesz grac?", "Klasa_handler")
menu_additem(menu, "\wKapral", "1", 0)
menu_additem(menu, "\wGeneral", "2", 0)
menu_additem(menu, "\wSzeregowy", "3", 0)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, menu, 0)
}

public Klasa_handler(id, menu, item)
{
if (item == MENU_EXIT)
{
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:
{
KlasaGracza[id] = 1
}
case 2:
{
KlasaGracza[id] = 2
}
case 3:
{
KlasaGracza[id] = 3
}

}
menu_destroy(menu)
return PLUGIN_HANDLED
}

public doklas(id, item)
{
if(KlasaGracza[id] == 1)
{
set_user_health(id, 120)
give_item(id, "CSW_M4A1")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
}
if(KlasaGracza[id] == 2)
{
set_user_health(id, 150)
give_item(id, "CSW_AK47")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
}
if(KlasaGracza[id] == 3)
{
set_user_health(id, 100)
give_item(id, "weapon_mp5navy")
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
}
}

public PokazInformacje(id)
{

set_task(0.1, "PokazInformacje", id)
if(!is_user_alive(id))
return PLUGIN_CONTINUE

set_hudmessage(255, 0, 0, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0)
show_hudmessage(id, "Klasa: %i", Klasa[KlasaGracza[id]])

return PLUGIN_CONTINUE;
}


Jeśli chodzi o dodanie kolejnej klasy musisz zrobić tak:
new const Klasa[5][] = {
"Brak",
"Kapral",
"General",
"Szeregowy",
"Twoja klasa",
}


I w public Wybierz_Klase(id) dodajemy
menu_additem(menu, "\wTwoja klasa", "4", 0)


Oraz tak jak ty napisałeś wcześniej.
Odpowiedz

  • +
  • -
ShoWmaN - zdjęcie ShoWmaN 18.12.2010

Dobra są klasy ale nie daje broni i nie ma hud'a :D
Ale hp daje
Użytkownik ShoWmaN edytował ten post 18.12.2010 23:18
Odpowiedz

  • +
  • -
Zapalka - zdjęcie Zapalka 19.12.2010

/* Plugin generated by AMXX-Studio */

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

#define PLUGIN "Klasy"
#define VERSION "1.0"
#define AUTHOR "Daniosik"


new const Klasa[4][] = {
"Brak",
"Kapral",
"General",
"Szeregowy"
}

new KlasaGracza[33]

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

register_clcmd("say /klasa", "Wybierz_Klase")
register_event("ResetHUD", "doklas", "be")
register_logevent("Poczatek_Rundy", 2, "1=Round_Start")

}

public Poczatek_Rundy(id)
{
doklas(id)
}

public Wybierz_Klase(id)
{
new menu = menu_create("Kim chcesz grac?", "Klasa_handler")
menu_additem(menu, "\wKapral", "1", 0)
menu_additem(menu, "\wGeneral", "2", 0)
menu_additem(menu, "\wSzeregowy", "3", 0)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, menu, 0)
}
public client_putinserver(id)
{
set_task(5.0, "PokazInformacje", id)
}
public Klasa_handler(id, menu, item)
{
if (item == MENU_EXIT)
{
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:
{
KlasaGracza[id] = 1
}
case 2:
{
KlasaGracza[id] = 2
}
case 3:
{
KlasaGracza[id] = 3
}

}
menu_destroy(menu)
return PLUGIN_HANDLED
}

public doklas(id)
{
if(KlasaGracza[id] == 1)
{
set_user_health(id, 120)
give_item(id, "CSW_M4A1")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
}
if(KlasaGracza[id] == 2)
{
set_user_health(id, 150)
give_item(id, "CSW_AK47")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
}
if(KlasaGracza[id] == 3)
{
set_user_health(id, 100)
give_item(id, "weapon_mp5navy")
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
}
}

public PokazInformacje(id)
{

set_task(0.5, "PokazInformacje", id)
if(!is_user_alive(id))
return PLUGIN_CONTINUE

set_hudmessage(255, 0, 0, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0)
show_hudmessage(id, "Klasa: %i", Klasa[KlasaGracza[id]])

return PLUGIN_CONTINUE;
}
Odpowiedz

  • +
  • -
InteR ;) - zdjęcie InteR ;) 19.12.2010

Dobra są klasy ale nie daje broni i nie ma hud'a :D
Ale hp daje


Bo chyba zamiast
CSW_Ak47
Trzeba dać
weapon_ak47

Użytkownik DvL edytował ten post 19.12.2010 11:11
Odpowiedz

  • +
  • -
ShoWmaN - zdjęcie ShoWmaN 19.12.2010

Ok mam to co zapałka dał. Niby jest ok nawet hud jest :D tylko, że jak wybierze się klasę to wyskakuję klasa: 66 itd.
+ jak się dednie to craschuje serwa
Użytkownik ShoWmaN edytował ten post 20.12.2010 08:52
Odpowiedz

Zaszka - zdjęcie Zaszka 22.12.2010

Moze ktos to naprawic bardzo proszę musze miec te klase :(
Odpowiedz

  • +
  • -
daniosik - zdjęcie daniosik 22.12.2010

Przepraszam, że tak długo, ale miałem problemy z kompem.
Sprawdźcie to:
/* Plugin generated by AMXX-Studio */

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

#define PLUGIN "Klasy"
#define VERSION "1.0"
#define AUTHOR "Daniosik"

new const Klasy[4][] =
{
"Brak",
"Kapral",
"General",
"Szeregowy"
}

new KlasaGracza[33]

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

register_clcmd("say /klasa", "Wybierz_Klase")
RegisterHam(Ham_Spawn, "player", "doklas", 1)

}


public Wybierz_Klase(id)
{
new menu = menu_create("Kim chcesz grac?", "Klasa_handler")
menu_additem(menu, "\wKapral", "1", 0)
menu_additem(menu, "\wGeneral", "2", 0)
menu_additem(menu, "\wSzeregowy", "3", 0)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, menu, 0)
}

public Klasa_handler(id, menu, item)
{
if (item == MENU_EXIT)
{
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:
{
KlasaGracza[id] = 1
}
case 2:
{
KlasaGracza[id] = 2
}
case 3:
{
KlasaGracza[id] = 3
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}

public doklas(id, item)
{
if(KlasaGracza[id] == 1)
{
set_user_health(id, 120)
give_item(id, "weapon_m4a1")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
}
if(KlasaGracza[id] == 2)
{
set_user_health(id, 150)
give_item(id, "weapon_ak47")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
}
if(KlasaGracza[id] == 3)
{
set_user_health(id, 100)
give_item(id, "weapon_mp5navy")
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
give_item(id, "ammo_9mm")
}
}

public PokazInformacje(id)
{

set_task(0.1, "PokazInformacje", id)
if(!is_user_alive(id))
return PLUGIN_CONTINUE

set_hudmessage(255, 0, 0, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0)
show_hudmessage(id, "Klasa: %s", Klasy[KlasaGracza[id]])

return PLUGIN_CONTINUE;
}

public client_connect(id)
{
PokazInformacje(id)
}

public client_disconnect(id)
{
KlasaGracza[id] = 0
}

Użytkownik daniosik edytował ten post 22.12.2010 16:50
Odpowiedz

  • +
  • -
ShoWmaN - zdjęcie ShoWmaN 24.12.2010

No ;]
Nareszcie... ;] temat do zamknięcia ;]
Odpowiedz
Zablokowany