TheSmart Posted July 25, 2015 Share Posted July 25, 2015 hey guys! today i was going to release moderator panel but it have some bug and i tried to fix it but can't Server function permission (source) local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Moderator" ) ) then triggerClientEvent(source, "openModerator", getRootElement()) end end bindKey ( "o", "down", permission ) that error i got WARNING: modpanel\server.lua:22: Bad argument @ 'bindKey' [Expected player at argument 1, got string 'o'] Link to comment
Simple0x47 Posted July 25, 2015 Share Posted July 25, 2015 Try this. bindKey ( thePlayer,"o","down", permission ) Link to comment
HUNGRY:3 Posted July 25, 2015 Share Posted July 25, 2015 Try this. bindKey ( thePlayer,"o","down", permission ) thePlayer is not defined Try this function permission (thePlayer) local accName = getAccountName ( getPlayerAccount ( player ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Moderator" ) ) then triggerClientEvent(thePlayer,"openModerator", getRootElement()) end end bindKey ( thePlayer,"o", "down", permission ) Link to comment
xeon17 Posted July 25, 2015 Share Posted July 25, 2015 function permission (thePlayer) local accName = getAccountName ( getPlayerAccount ( player ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Moderator" ) ) then triggerClientEvent(thePlayer,"openModerator", getRootElement()) end end bindKey ( thePlayer,"o", "down", permission ) It should be function permission (player) instead of function permission (thePlayer) You guys should learn some Scripting basics before you try to help other peoples. Link to comment
TheSmart Posted July 25, 2015 Author Share Posted July 25, 2015 still getting same error function permission (player) local accName = getAccountName ( getPlayerAccount ( player ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Moderator" ) ) then triggerClientEvent(player, "openModerator", getRootElement()) end end bindKey ( player, "o", "down", permission ) Link to comment
xeon17 Posted July 25, 2015 Share Posted July 25, 2015 The player isn't defined outside the function, create a function which will bind the key when the resource starts and when the player join in server. Link to comment
TheSmart Posted July 25, 2015 Author Share Posted July 25, 2015 bind fix but now getting new error local accName = getAccountName ( getPlayerAccount ( player ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Moderator" ) ) then WARNING: modpanel\server.lua:17: Bad argument @ 'getPlayerAccount' [Expected element at argument 1, got resource-data] WARNING: modpanel\server.lua:17: Bad argument @ 'getAccountName' [Expected account at argument 1, got boolean] ERROR: modpanel\server.lua:18: attempt to concatenate local 'accName' (a boolean value) Link to comment
TheSmart Posted July 25, 2015 Author Share Posted July 25, 2015 server --[[ moderator Panel Author: [email protected] Description : Moderator Panel Panel script Copyright 2015 (C) [email protected] All rights reserved. ==== Client Side Functions ==== ]]-- ---- Please Don't remove my rights ---- function rights () outputChatBox("Moderator Panel v1.0 by [email protected]", getRootElement(), 0, 255, 0, false) outputChatBox("Press o to open moderator panel", getRootElement(), 0, 255, 0, false) end addEventHandler("onResourceStart",getResourceRootElement(getThisResource()),rights) function permission (player) local accName = getAccountName ( getPlayerAccount ( player ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Moderator" ) ) then triggerClientEvent(player, "openModerator", getRootElement()) end end addEventHandler("onResourceStart", getRootElement(), permission) function bind (player) bindKey ( player,"o", "down", bind ) addEventHandler("onResourceStart", getRootElement(), bind) function info (player) info = {} local user = getPlayerFromName(player) if not isGuestAccount(getPlayerAccount(user)) then local username = getAccountName(getPlayerAccount(user)) local team = getTeamName(getPlayerTeam(user)) local ip = getPlayerIP(user) local serial = getPlayerSerial(user) local veh = getVehicleName(getPedOccupiedVehicle(user)) triggerClientEvent(source, "sendInformationClient",root,username,team,ip,serial,veh) end end addEvent("sendInfoServer", true) addEventHandler("sendInfoServer", getRootElement(), info) function mute (client) player = getPlayerFromName(client) if isPlayerMuted(player) == false then setPlayerMuted(player, true) outputChatBox(getPlayerName(player).." has been muted by "..getPlayerName(source), getRootElement(), 255, 0, 0, false) elseif isPlayerMuted(player) == true then setPlayerMuted(player, false) outputChatBox(getPlayerName(player).." has been unmuted by "..getPlayerName(source), getRootElement(), 0, 255, 0, false) end end addEvent("mutePlayer", true) addEventHandler("mutePlayer", getRootElement(), mute) function freeze (client) player = getPlayerFromName(client) if isElementFrozen(player) == false then setElementFrozen(player, true) outputChatBox(getPlayerName(player).." has been frozen by "..getPlayerName(source), getRootElement(), 255, 0, 0, false) elseif isElementFrozen(player) == true then setElementFrozen(player, false) outputChatBox(getPlayerName(player).." has been unfrozen by "..getPlayerName(source), getRootElement(), 0, 255, 0, false) end end addEvent("freezePlayer", true) addEventHandler("freezePlayer", getRootElement(), freeze) function warpto (thePlayer) local player = getPlayerFromName(thePlayer) local x,y,z = getElementPosition(player) if isPedInVehicle(source) == true then removePedFromVehicle(source,getPedOccupiedVehicle(source)) setElementPosition(source, x, y+1, z+1) outputChatBox("You have warped to "..getPlayerName(player), source, 0, 255, 0, false) elseif isPedInVehicle(source) == false then setElementPosition(source, x, y+1, z+1) outputChatBox("You have warped to "..getPlayerName(player), source, 0, 255, 0, false) end end addEvent("warptoPlayer", true) addEventHandler("warptoPlayer", getRootElement(), warpto) function warphere (thePlayer) local player = getPlayerFromName(thePlayer) local x,y,z = getElementPosition(source) if isPedInVehicle(player) == true then removePedFromVehicle(player,getPedOccupiedVehicle(player)) setElementPosition(player, x, y+1, z+1) outputChatBox("You have been warped to "..getPlayerName(source), player, 0, 255, 0, false) elseif isPedInVehicle(player) == false then setElementPosition(player, x, y+1, z+1) outputChatBox("You have been warped to "..getPlayerName(source), player, 0, 255, 0, false) end end addEvent("warpPlayerhere", true) addEventHandler("warpPlayerhere", getRootElement(), warphere) function killgay (gay) setElementHealth(getPlayerFromName(gay),0) end addEvent("killNigga", true) addEventHandler("killNigga", getRootElement(), killgay) function kickgay (client, respon, reason) player = getPlayerFromName(client) kickPlayer(player, respon, reason) outputChatBox(getPlayerName(player).." has been kicked by "..getPlayerName(respon), getRootElement()) end addEvent("kickPlayeraway", true) addEventHandler("kickPlayeraway", getRootElement(), kickgay) function destroycar (client) player = getPlayerFromName(client) car = getPedOccupiedVehicle(player) if isPedInVehicle(player) then destroyElement(car) outputChatBox("Your car has been destroyed by "..getPlayerName(source), player, 255, 0, 0, false) outputChatBox("You have destroyed "..getPlayerName(player).."'s car", source, 255, 0, 0, false) else outputChatBox(getPlayerName(player).." isn't in a vehicle", source, 255, 0, 0, false) end end addEvent("destroyveh", true) addEventHandler("destroyveh", getRootElement(), destroycar) function fixcar (client) player = getPlayerFromName(client) car = getPedOccupiedVehicle(player) if isPedInVehicle(player) then fixVehicle(car) outputChatBox("Your car has been fixed by "..getPlayerName(source), player, 255, 0, 0, false) outputChatBox("You have fixed "..getPlayerName(player).."'s car", source, 255, 0, 0, false) else outputChatBox(getPlayerName(player).." isn't in a vehicle", source, 255, 0, 0, false) end end addEvent("fixveh", true) addEventHandler("fixveh", getRootElement(), fixcar) end client --[[ moderator Panel Author: [email protected] Description : Moderator Panel Panel script Copyright 2015 (C) [email protected] All rights reserved. ==== Client Side Functions ==== ]]-- ---- Please Don't remove my rights ---- local screenWidth, screenHeight = guiGetScreenSize() window = guiCreateWindow(181, 288, 937, 461, "Moderator Panel by [email protected]", false) guiWindowSetSizable(window, false) gridplayer = guiCreateGridList(9, 51, 170, 400, false, window) guiGridListAddColumn(gridplayer, "Player", 0.9) editplayer = guiCreateEdit(0.01, 0.07, 0.18, 0.05, "", true, window) label = guiCreateLabel(193, 35, 248, 26, "Player Information", false, window) local font0_EmblemaOne = guiCreateFont("EmblemaOne.ttf", 11) guiSetFont(label, font0_EmblemaOne) guiLabelSetColor(label, 255, 0, 0) PlayerN = guiCreateLabel(191, 71, 94, 27, "Player Name:", false, window) PlayerU = guiCreateLabel(191, 108, 94, 27, "Player Username:", false, window) playerS = guiCreateLabel(191, 145, 94, 27, "Player Serial:", false, window) PlayerIP = guiCreateLabel(191, 188, 94, 27, "Player IP:", false, window) PlayerT = guiCreateLabel(191, 232, 94, 27, "Player Team:", false, window) PlayerV = guiCreateLabel(191, 274, 94, 27, "Player Vehicle:", false, window) PlayerNL = guiCreateLabel(314, 71, 94, 27, "", false, window) PlayerUL = guiCreateLabel(314, 108, 94, 27, "", false, window) PlayerSL = guiCreateLabel(314, 145, 94, 27, "", false, window) PlayerIPL = guiCreateLabel(314, 188, 94, 27, "", false, window) PlayerTL = guiCreateLabel(314, 232, 94, 27, "", false, window) PlayerVL = guiCreateLabel(314, 274, 94, 27, "", false, window) mutebtn = guiCreateButton(769, 50, 150, 35, "Mute", false, window) local font1_EmblemaOne = guiCreateFont("EmblemaOne.ttf", 19) guiSetFont(mutebtn, font1_EmblemaOne) freezebtn = guiCreateButton(769, 100, 150, 35, "Freeze", false, window) guiSetFont(freezebtn, font1_EmblemaOne) killbtn = guiCreateButton(769, 149, 150, 35, "KIll Player", false, window) local font2_EmblemaOne = guiCreateFont("EmblemaOne.ttf", 10) guiSetFont(killbtn, font1_EmblemaOne) warptpbtn = guiCreateButton(769, 194, 150, 35, "Warp to player", false, window) guiSetFont(warptpbtn, font1_EmblemaOne) warphbtn = guiCreateButton(769, 239, 150, 35, "warp here", false, window) guiSetFont(warphbtn, font1_EmblemaOne) kickbtn = guiCreateButton(769, 284, 150, 35, "Kick player", false, window) guiSetFont(kickbtn, font1_EmblemaOne) reasonedit = guiCreateEdit(549, 288, 203, 31, "Enter Reason here", false, window) fixbtn = guiCreateButton(769, 333, 150, 35, "Fix Vehicle", false, window) guiSetFont(fixbtn, font1_EmblemaOne) destroybtn = guiCreateButton(769, 384, 150, 35, "Destroy Vehicle", false, window) guiSetFont(destroybtn, font1_EmblemaOne) guiSetVisible(window, false) function openModPanel () if guiGetVisible(window) == false then guiSetVisible(window, true) showCursor(true) getplayers () elseif guiGetVisible(window) == true then guiSetVisible(window, false) showCursor(false) guiGridListClear(gridplayer) resetall() end end addEvent("openModerator", true) addEventHandler("openModerator", getRootElement(), openModPanel) function getplayers () guiGridListClear(gridplayer) for index, player in ipairs(getElementsByType("player")) do local row = guiGridListAddRow(gridplayer) guiGridListSetItemText(gridplayer, row, 1, getPlayerName(player), false, false) guiGridListSetItemData(gridplayer, row, 1, player) end end addEventHandler("onClientPlayerChangeNick", getRootElement(), getplayers) function information (username,team,ip,serial,veh) guiSetText(PlayerUL,""..username) guiSetText(PlayerTL,""..team) guiSetText(PlayerIPL,""..ip) guiSetText(PlayerSL,""..serial) guiSetText(PlayerVL,""..veh) end addEvent("sendInformationClient", true) addEventHandler("sendInformationClient", getRootElement(), information) function infoget () local nigga = guiGridListGetItemText ( gridplayer, guiGridListGetSelectedItem(gridplayer), 1 ) if nigga then triggerServerEvent('sendInfoServer', getLocalPlayer(), nigga) end end addEventHandler('onClientGUIClick', gridplayer, infoget) function clicks () selected = guiGridListGetItemText(gridplayerguiGridListGetSelectedItem(gridplayer), 1) if (guiGridListGetSelectedItem(gridplayer~= -1)) then if source == mutebtn then triggerServerEvent("mutePlayer", getLocalPlayer(), selected) elseif source == freezebtn then triggerServerEvent("freezePlayer", getLocalPlayer(), selected) elseif source == killbtn then triggerServerEvent("killNigga", getLocalPlayer(), selected) elseif source == warptpbtn then triggerServerEvent('warptoPlayer', getLocalPlayer(), selected) elseif source == warphbtn then triggerServerEvent("warpPlayerhere", getLocalPlayer(), selected) elseif source == kickbtn then triggerServerEvent("kickPlayeraway", getLocalPlayer(), selected, guiGetText(reasonedit)) elseif source == fixbtn then triggerServerEvent("fixveh", getLocalPlayer(), selected) elseif source == destroybtn then triggerServerEvent("destroyveh", getLocalPlayer(), selected) end end end addEventHandler('onClientGUIClick', window, clicks) function boxes () if source == reasonedit then guiSetText(reasonedit, "") end addEventHandler('onClientGUIClick', window, boxes) function resetall () guiSetText(PlayerUL,"") guiSetText(PlayerTL,"") guiSetText(PlayerIPL,"") guiSetText(PlayerSL,"") guiSetText(PlayerVL,"") end end Link to comment
xeon17 Posted July 25, 2015 Share Posted July 25, 2015 (edited) So many errors. You should learn to check the wiki, every function and events have arguments. function permission () for _,player in pairs (getElementsByType('player')) do local accName = getAccountName ( getPlayerAccount ( player ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Moderator" ) ) then triggerClientEvent(player, "openModerator", getRootElement()) setTimer(triggerClientEvent,3000,1,player,'openModerator',root) end end end addEventHandler("onResourceStart", resourceRoot,, permission) Edited July 25, 2015 by Guest Link to comment
TheSmart Posted July 25, 2015 Author Share Posted July 25, 2015 -__- http://prntscr.com/7wsxx4 server function permission () for _,player in pairs (getElementsByType('player')) do local accName = getAccountName ( getPlayerAccount ( player ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Moderator" ) ) then triggerClientEvent(player, "openModerator", getRootElement()) end end end addEventHandler("onResourceStart", resourceRoot,, permission) client function openModPanel () if guiGetVisible(window) == false then guiSetVisible(window, true) showCursor(true) getplayers () elseif guiGetVisible(window) == true then guiSetVisible(window, false) showCursor(false) guiGridListClear(gridplayer) resetall() end end addEvent("openModerator", true) addEventHandler("openModerator", getRootElement(), openModPanel) it added so why it giving me error? Link to comment
TheSmart Posted July 25, 2015 Author Share Posted July 25, 2015 fix but to many error Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now