heliss

Pluginų redagavimas, sutvarkymas

Recommended Posts

Turbūt daug kas norėjo pakoreguoti pluginą savaip, ar net išsiversti į lietuvių kalbą...

Verčiant pluginą į savo kalbą, verta žinoti:

Kodas: Pasirinkti visus

client_print

- jai editindami plugino .sma failą, pamatote tokią eilutę, žinokit, kad ją reikia išverst :). ši eilutė reiškia, kad pluginas kažką rašis asmeniškai žaidėjui

Kodas: Pasirinkti visus

public_print

- šią eilutę taip pat galima išverst, ji reiškia, kad tekstą matis visi žaidėjai

Kodas: Pasirinkti visus

newmessage

, ar kažkas panašaus... Dažniausiai tekstą reikia versti kabutėse

pvz:

Kodas: Pasirinkti visus

new suicidemess[2][]=

{

"%s neatlaike spaudimo ir nusižudė!",

"%s nusižudė... Geriau butum miręs kovos lauke"

}

Kodas: Pasirinkti visus

client_cmd

- Tekstas bus parašytas žaidėjui į konsole

Kodas: Pasirinkti visus

log_amx

- tekstas, kuris bus rašomas pačio servo konsolėje....

Kodas: Pasirinkti visus

server_cmd

- tekstas, kurį žaidėjas pamatis lentelėje...

Taip pat atsidarius plugino .sma svarbu yra:

Kodas: Pasirinkti visus

#include

- tai parodo, kokius modulius reikia įjungti cstrike folderyje...

pvz:

Kodas: Pasirinkti visus

#include

#include

Kodas: Pasirinkti visus

#define

- Taip pat svarbus, nes jame dažnai būna yterptos visokios komandos, kurias galite pakeisti (kiek kartų tam tikras garsas gros ir t.t...)

Kodas: Pasirinkti visus

new

- jame surašomos servo komandos, pvz nuo kiek pingo kickins, iš kokių šalių žaidėjai negalės ateit...

Kodas: Pasirinkti visus

register_cvar

- Taip pat surašomos servo komandos, dažniausiai būna susijusios su modų įjungimu/išjungimu, žaidėjų papildomomis galimybėmis...

Nu ką, bandome editinti pluginą......

HPK

Kodas: Pasirinkti visus

/* AMX Mod script

*

* © 2002-2003, DynAstY

* This file is provided as is (no warranties).

*

* Players with immunity won't be checked

*/

#include | Čia praverstų anglų kalbos žinios....

new HIGHPING_MAX = 200 // set maximal acceptable ping || Nustato maksimalų pinkgą

new HIGHPING_TIME = 15 // Nustato, kas kiek laiko žaidėjui bus tikrinamas pingas

new HIGHPING_TESTS = 8 // Kiek kartų žaidėjas bus patikrinamas, prie gaudamas kick

new iNumTests[33]

public plugin_init() {

register_plugin("High Ping Kicker","1.2.0","DynAstY")

if (HIGHPING_TIME < 15) HIGHPING_TIME = 15

if (HIGHPING_TESTS < 4) HIGHPING_TESTS = 4

return PLUGIN_CONTINUE

}

public client_disconnect(id) {

remove_task(id)

return PLUGIN_CONTINUE

}

public client_putinserver(id) {

iNumTests[id] = 0

if (!is_user_bot(id)) {

new param[1]

param[0] = id

set_task(30.0, "showWarn", id, param, 1)

}

return PLUGIN_CONTINUE

}

kickPlayer(id) {

new name[32]

get_user_name(id, name, 31)

new uID = get_user_userid(id)

server_cmd("banid 1 #%d", uID)

client_cmd(id, "echo ^"[HPK] Sorry but you have high ping, try later...^"; disconnect") || tekstas konsolėje

client_print(0, print_chat, "[*Myliu SuperGames.lt*] %s gavo kick, nes siuntėsi porno", name) || tekstas chate

return PLUGIN_CONTINUE

}

public checkPing(param[]) {

new id = param[0]

if ((get_user_flags(id) & ADMIN_IMMUNITY) || (get_user_flags(id) & ADMIN_RESERVATION)) {

remove_task(id)

client_print(id, print_chat, "[HPK] Ping checking disabled due to immunity...") ||tekstas žaidėjui

return PLUGIN_CONTINUE

}

new p, l

get_user_ping(id, p, l)

if (p > HIGHPING_MAX)

++iNumTests[id]

else

if (iNumTests[id] > 0) --iNumTests[id]

if (iNumTests[id] > HIGHPING_TESTS)

kickPlayer(id)

return PLUGIN_CONTINUE

}

public showWarn(param[]) {

client_print(param[0], print_chat, "[HPK] Players with ping higher than %dms will be kicked!", HIGHPING_MAX) ||tekstas chate, kurį matis visi

set_task(float(HIGHPING_TIME), "checkPing", param[0], param, 1, "b")

return PLUGIN_CONTINUE

}

Nu bandom kitą pluginą:

COUNTRY KICKER

Kodas: Pasirinkti visus

#include || iškart matome, kokių modulių reikės modules.ini faile

#include

#define MAX_COUNTRYS 15 || Čia matome, kiek max šalių bus kikinama

new g_Mode

new g_CC[MAX_COUNTRYS+1][4]

new g_Countries

new CountyList[128]

public plugin_init()

{

register_plugin("Country kicker","1.0.0","EKS")

register_cvar("sv_country_name","NOR,DEN, PL") || iš kokių šalių bus kickinami žaidėjai

register_cvar("sv_country","1")

}

public plugin_cfg()

{

g_Mode = get_cvar_num("sv_country")

new CvarInfo[MAX_COUNTRYS*3+MAX_COUNTRYS+2]

get_cvar_string("sv_country_name",CvarInfo,MAX_COUNTRYS*3+MAX_COUNTRYS+2)

g_Countries = ExplodeString( g_CC, MAX_COUNTRYS, 3, CvarInfo, ',' )

for(new i=0;i<=g_Countries;i++)

format(CountyList,127,"%s %s",CountyList,g_CC)

}

stock ExplodeString( p_szOutput[][], p_nMax, p_nSize, p_szInput[], p_szDelimiter )

{

new nIdx = 0, l = strlen(p_szInput)

new nLen = (1 + copyc( p_szOutput[nIdx], p_nSize, p_szInput, p_szDelimiter ))

while( (nLen < l) && (++nIdx < p_nMax) )

nLen += (1 + copyc( p_szOutput[nIdx], p_nSize, p_szInput[nLen], p_szDelimiter ))

return nIdx

}

stock IsConInArray(Con[4])

{

for(new i=0;i<=g_Countries;i++)

{

if(equal(Con,g_CC))

return 1

}

return 0

}

stock IsLocalIp(IP[32])

{

new tIP[32]

copy(tIP,3,IP)

if(equal(tIP,"10.") || equal(tIP,"127"))

return 1

copy(tIP,7,IP)

if(equal(tIP,"192.168"))

return 1

return 0

}

public client_connect(id)

{

new userip[32]

new CC[4]

get_user_ip(id,userip,31,1)

geoip_code3(userip,CC)

if(strlen(userip) == 0)

{

get_user_ip(id,userip,31,1)

if(!IsLocalIp(userip))

log_amx("%s made a error when passed though geoip",userip) || pranešimas servo konsolėj faile, jai eroras

return PLUGIN_HANDLED

}

if(g_Mode == 1 && !IsConInArray(CC))

{

server_cmd("kick #%d Only ppl from %s are allowed",get_user_userid(id),CountyList) || tekstas, editinimui

new Name[32]

get_user_name(id,Name,31)

client_print(0,print_chat,"%s was kicked because he is not from %s",Name,CountyList) || EDIT!!!

}

else if(g_Mode == 2 && IsConInArray(CC))

{

server_cmd("kick #%d No %s are allowed on this server",get_user_userid(id),CC) || EDIT :>

new Name[32]

get_user_name(id,Name,31)

client_print(0,print_chat,"%s was kicked because he is from %s",Name,CC) || edit.....>..>.

}

return PLUGIN_HANDLED

}

Šalių kodai: http://www.statoids.com/wab.html || naudoti A3!!

Taigi, pradžią turite pluginų editinime.... Jai nepavyksta editint kokio plugino, ar nesuprantat, kas ką reiškia, iškart rašot šioje temoje :)

Praeditintą pluginą turėsit kompiliuoti, apie tai galite pasiskaityti SCRIPTINIMO PAMOKOSE....

Sėkmės darbuose!

Dalintis šį pranešimą


Nuoroda iki šio pranešimo
Dalintis per kitą puslapį

Prisijungti prie diskusijos

Palikti atsakymą galite iš karto, o užsiregistruoti vėliau. Jeigu jau turite paskyrą mūsų forume, Prisijunkite.

Svečias
Atsakyti šioje temoje...

×   Įklijuotas tekstas turi teksto formatavimą.   Pašalinti teksto formatavimą

  Galimi tik 75 veidukai.

×   Nuoroda buvo automatiškai įterpta.   Įterpti nuorodą paprastai

×   Jūsų ankstesnis pranešimas buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.


  • Šiame puslapyje naršo:   0 nariai

    Nėra registruotų narių peržiūrinčių šį forumą.

  • eneba
  • eneba
  • eneba



  • SuperGames programele
  • SuperGames programele