Stránka 1 z 1

Nejede PLUGIN

Napsal: 22 led 2011, 16:19
od Semi
Dobrý den
Stáhl jsem si tento plugin který slouží k tomu že VIP hráči mají za nickem VIP

Ale jede to jen ADMINŮM prosím nevíte jakou v tom mám chybu ?

Kód: Vybrat vše

#include <amxmodx>
#include <amxmisc>

new g_szVIPMap

public plugin_init()
{
   register_plugin("VIPNICK", "1.0", "PHP++")
   register_event("ResetHUD", "ResetHUD", "be")
   
   new szMapName[32]
   get_mapname(szMapName, 31)
   
   if (containi(szMapName, "as_") > -1)
      g_szVIPMap = 1
}

public ResetHUD(id)
{
   set_task(0.5, "VIP", id + 6910)
}

public VIP(TaskID)
{
   if (g_szVIPMap)
      return PLUGIN_HANDLED
      
   new id = TaskID - 6910
   
   if(is_user_admin(id) && (is_user_alive(id) && (access(id, ADMIN_LEVEL_H))))
   {
      message_begin(MSG_ALL, get_user_msgid("ScoreAttrib"))
      write_byte(id)
      write_byte(4)
      message_end()
   }
   
   return PLUGIN_HANDLED
}

Re: Nejede PLUGIN

Napsal: 22 led 2011, 17:22
od SPiRIT
Já jsem teda nedávno začal se skriptováním sourcemodu jo, ale dle téhle podmínky:

Kód: Vybrat vše

if(is_user_admin(id) && (is_user_alive(id) && (access(id, ADMIN_LEVEL_H))))

předpokládám , že is_user_admin(id) je nějaká funkce která ověřuje zda li je steam ID hráče zapsané v nějakém admin listu bo něco na ten způsob, is_user_alive to je zase něco na ten způsob, že je hráč aktivně hrající na serveru nebo to značí, že je jen úspěšně připojen na server nevím, to by musely běžet stránky AMXMODX s dokumentací abych ti to řekl přesně, a pak dále musí daná osoba mít nastaveno písmeno admin level H, tedy oprávnění které značí písmeno H, nevím co to v amx modx značí, každopádně tyhle 3 podmínky to musí splňovat podle logické funkce AND, pokud všechny platí provede se kód v závorce:

Kód: Vybrat vše

{
      message_begin(MSG_ALL, get_user_msgid("ScoreAttrib"))
      write_byte(id)
      write_byte(4)
      message_end()
   }

Takže bylo by třebný upravit tuto podmínku, ale poněvadž neznám z paměti ani funkce v sourcemodu tak by bylo potřeba mít dokumentaci která je aktuálně offline.
Popřípadě, zapiš VIP uživatele do toho místa kde máš zapsaný adminy, a přiřaď jim jen oprávnění H, ale nevím co to je za funkci, tedy co jim povolíš.


//EDIT: Možná to H je ten custom FLAG, kterej můžeš libovolně využít na co chceš a žádný jiný práva nepřidává, ale nemám to z ověřenýho zdroje, je to jen z nějaké polské stránky, tak čert tomu věř :lol:

A příště napiš port server nejlíp i s IP adresou ;)

Re: Nejede PLUGIN

Napsal: 22 led 2011, 17:51
od Semi
IP : 93.91.240.118:27657

Prosím nemohl bys sem napsat, ten CODE aby to šlo i VIP hráčům, myslím to .sma

Re: Nejede PLUGIN

Napsal: 22 led 2011, 17:56
od SPiRIT
Vono by to mělo jít i takto jak to je, jen VIP zapiš do admin listu a dej jim písmeno h jako pravomoc, a možná to půjde ;) nemělo by se tam nic měnit, pokud je opravdu ten flag H pro všeobecné použití ;)

Re: Nejede PLUGIN

Napsal: 22 led 2011, 18:20
od Semi
No divej ADMINŮM to jede ale VIP hráčům ne

Uděluji to takto : http://unfree.wz.cz/vipnick.jpg

Re: Nejede PLUGIN

Napsal: 22 led 2011, 18:34
od SPiRIT
Když jsem kdysi dělal cs1.6 servery tam byl soubor někde admins.ini nebo tak nějak podobně, a tam se zadával nick IP/steamID flagy a popřípadě myslím heslo který se vkládalo do configu v případě, že dotyčný měl práva na IP nebo nick, to může být tak 5 let kdy jsem si hrál s cs1.6 servery, takže už fakt nevím. Jak to nastavit v amxbans nevím jistě, asi bych zkusil dát flag h do kolonky flags a access a pokud by to fungovalo tak z jednoho sloupečku to pak umazat a tím zjistíš který je ten správný.

Osobně bych tipoval kolonku access, pokud jsou ti VIP ti s tema 3 pismenkama (btz) tak jim doplň písmeno h.

Re: Nejede PLUGIN

Napsal: 23 led 2011, 14:49
od MiniMe
Spis bych rekl, ze je problem v tom, ze dany VIP pouziva flag z(hráč není admin, pouze uživatel). Nasvedcuje tomu i to, ze adminuim to funguje.

doporucuju teda

Kód: Vybrat vše

if(is_user_admin(id) && (is_user_alive(id) && (access(id, ADMIN_LEVEL_H))))

upravit na

Kód: Vybrat vše

if(is_user_alive(id) && (access(id, ADMIN_LEVEL_H)))