-
Sziasztok! Egy olyan kérdésem lenne , hogy mi az a script , vagy mi az a script sor amit be kell írni másik scriptbe , pl /adminduty , és akkor leugorjon az infobox?. Válaszokat előre is köszönöm! CSAK A MEGHÍVÁSA KELL , NEM AZ INFOBOX! :)
-
Meghívás
Kliens oldalon:
exports.resource neve:showBox (\"info,warning,error (ezek lehetnek)\",\"szöveg,amit akarsz\")
Szerver oldalon:
exports.resource neve:showBox (source,\"info,warning,error(ezek lehetnek)\",\"szöveg,amit akarsz\")
-
--Adminduty (szerver oldal, mindenki látja)
local adminneve = getPlayerName(thePlayer)
exports.notifications:showBox(\"info\", adminneve .. \" adminszolgálatba lépett.\")
--Valami error (szerver oldal, csak az adott ember látja)
exports.notifications:showBox(source, \"error\", \"Nincs elég benzin a kocsiban\")
--Valami info (kliens oldal)
exports.notifications:showBox(\"info\", \"Sikeresen felvetted a földről\")
Remélem érthetően írtam le (Ugye alap, letölthető notifications script -re írtam a példákat)
Download: https://community.multitheftauto.com/index.php?p=resources&s=details&id=5812
-
És az adminos részt az admin systembe kell írni vagy hova? :) Válaszodat köszönöm!
-
Mivel gondolom Valhalla/ZeroMTA modról van szó itt az adminduty teljes kódja ezzel kiegészítve (admin-system > player > s_player_commands.lua)
function adminDuty(thePlayer, commandName)
if exports.global:isPlayerAdmin(thePlayer) then
local adminduty = getElementData(thePlayer, \"adminduty\")
local username = getPlayerName(thePlayer)
local adminrang = exports.global:getPlayerAdminTitle(thePlayer)
local playerName = getPlayerName(thePlayer)
local pmid = getElementData(thePlayer, \"playerid\")
if (adminduty==0) then --Adminduty belépés
exports[\'anticheat-system\']:changeProtectedElementDataEx(thePlayer, \"adminduty\", 1) --Ez teszi be admindutyba
exports.notifications:showBox(root, \"info\",username .. \" adminszolgálatba lépett.\") --Ez itt a felugró ablak (bejelentkezett)
elseif (adminduty==1) then --Adminduty kilépés
exports[\'anticheat-system\']:changeProtectedElementDataEx(thePlayer, \"adminduty\", 0) --Ez szedi ki adminduty -ból
exports.notifications:showBox(root, \"info\", username .. \" kilépett az adminszolgálatból.\") --Ez itt a felugró ablak (kijelentkezett)
end
mysql:query_free(\"UPDATE accounts SET adminduty=\" .. mysql:escape_string(getElementData(thePlayer, \"adminduty\")) .. \" WHERE id = \" .. mysql:escape_string(getElementData(thePlayer, \"gameaccountid\")) )
exports.global:updateNametagColor(thePlayer)
end
end
addCommandHandler(\"adminduty\", adminDuty, false, false)
addCommandHandler(\"aduty\", adminDuty, false, false)
addCommandHandler(\"admind\", adminDuty, false, false)
-
Így meg nem lehet szolgálatba lépni.
-
Elírtam a kódot bocsi. Elvileg most jó. Fáradt vagyok kicsit bocsi :D
-
Semmi gond , de most se lehet szoliba lépni. :)
-
Hibaüzenetet tudsz adni?
-
Persze. Csak a debugscript 3 nem működik , tehát az írja hogy nincs ilyen parancs. Azon kívűl hol találom meg ? És akkor küldöm. :)
-
Hát esetleg az a console ablak amiről legelőször is csatoltál képet.
-
Képet nem csatoltam , vagy bocs ha értetlenkedek , csak már nekem is este van egy kicsit , meg már összezavarodok itt. :)
-
Egy console ablakot fényképezz le vagy valamit amiben látszik mi a hiba
-
Próbáld meg ezzel nekem is ez van bent az admin-systmbe
function adminDuty(thePlayer, commandName)
if exports.global:isPlayerAdmin(thePlayer) then
local adminduty = getElementData(thePlayer, \"adminduty\")
local username = getPlayerName(thePlayer)
local adminrang = exports.global:getPlayerAdminTitle(thePlayer)
local playerName = getPlayerName(thePlayer)
local pmid = getElementData(thePlayer, \"playerid\")
if (adminduty==0) then
exports[\'anticheat-system\']:changeProtectedElementDataEx(thePlayer, \"adminduty\", 1)
-- outputChatBox(\"Admin szolgálatba léptél.\", thePlayer, 0, 255, 0)
exports.global:sendMessageToAdmins(\"AdmDuty: \" .. username .. \" szolgálatba lépett.\")
outputChatBox(playerName .. \" adminszolgálatba lépett! /pm \"..pmid..\" parancsal írsz neki!\", getRootElement(), 0, 255, 0,true)
exports.infobox:showBox(root, \'info\', \"\".. playerName .. \" kilépett adminszolgálatból! Bármi gond van írj neki /reportban.\");
elseif (adminduty==1) then
exports[\'anticheat-system\']:changeProtectedElementDataEx(thePlayer, \"adminduty\", 0)
outputChatBox(\"Kiléptél az Admin szolgálatból.\", thePlayer, 255, 0, 0)
--exports.global:sendMessageToAdmins(\"AdmDuty: \" .. username .. \" kilépett a szolgálatból.\")
outputChatBox(playerName .. \" kilépett az adminszolgálatból!\", getRootElement(), 255, 0, 0,true)
exports.infobox:showBox(root, \'info\', \"\".. playerName .. \" adminszolgálatba lépett! /pm \".. pmid ..\" parancsal írhatsz neki.\");
end
mysql:query_free(\"UPDATE accounts SET adminduty=\" .. mysql:escape_string(getElementData(thePlayer, \"adminduty\")) .. \" WHERE id = \" .. mysql:escape_string(getElementData(thePlayer, \"gameaccountid\")) )
exports.global:updateNametagColor(thePlayer)
end
end
addCommandHandler(\"adminduty\", adminDuty, false, false)
-
Azt nem értem, hogy nem működhet. Teljesen alapot másoltam be, csupán felesleges kiírások eltávolítva, infobox hozzáada.
-
Bocsi én is csak bemásoltam, de lehet hogy az a baj hogy a \"notifications\" res helyett neki mondjuk \"infobox\" van, vagy pedig nem fut a notifications vagy az infobox res
-
Persze, írtam is, hogy az én példám \"notifications\" nevű resource -ra készült
-
Egyel feljebb írtam, hogy van...
Ha infobox a neve akkor:
exports.infobox:showBox
Ha notifications akkor:
exports.notifications:showBox
Remélem érthető, ennél jobban nem tudom leírni.
-
Küldj képet arról a mappáról, amibe van az infoboxod, vagy mond meg a mappa nevét
-
Nekem ez sehogy nem akar működni.
Dupla üzenet összevonva ekkor: [time]2015. Március 21. - 22:38:39[/time]

A képet a Képfeltöltés.hu tárolja. 1426977960[/time]
Az a baj, hogy olyan mintha nem is érzékelné hogy nem is lenne fent az infobox. Tehát nem hívja meg , hanem csak simán a cheten kiírja hogy szolgálatba lépett meg stb. De semmi infobox nem jön le. És simán infobox néven töltöttem fel a szerverre. (http://www.kepfeltoltes.hu
Itt a kép.
Dupla üzenet összevonva ekkor: [time)
-
addCommandHandler(\"adminduty\",
function(playerSource)
if getElementData(playerSource, \"adminlevel\") >= 1 then
local adminduty = getElementData(playerSource, \"adminduty\")
local adminnick = getElementData(playerSource, \"adminnick\")
local playername = getElementData(playerSource, \"name\")
local pmid = getElementData(playerSource, \"cID\")
if (adminduty==0) then
setElementData(playerSource, \"adminduty\", 1)
exports[\'infobox\']:showBox(getRootElement(), \"info\", \" \" .. adminnick .. \" szolgálatba lépett!\",1)
end
if (adminduty==1) then
setElementData(playerSource, \"adminduty\", 0)
exports[\'infobox\']:showBox(getRootElement(), \"info\", adminnick .. \" kilépett a szolgálatból!\",2)
end
end
end
)
-
sajnos , ez sem működik. :/
Ebben szolgálatba se lehet lépni.
-
Azért mivel ez ElementData-zassal van megoldva, ez csak mysql-el működik...
-
Letudnád nekem írni pontról pontra hogy hogy is kell. Nagyon megköszönnèm , mivel infoboxal sose foglalkoztam ez idág. Ha segítetek ebben , akkor köszönöm! :)
-
Ő, ha Zero-t használsz akkor cseréld ki a Zero adminsystemét vagy pl. a bp life fájlait másold hozzá a zero-éhoz és elvileg működni fog !