..:D&G:.. Posted June 4, 2013 Share Posted June 4, 2013 Hello, I got the bpeds resource from community, I changed it a bit, and I got rid of anim.lua, info_c.lua and info_s.lua as I need just the gui and the normal script. When I press the create button (CREAZA) all I get is an error in the console, a outputChatBox bad argument at like 103 on server.lua... server.lua: -- outputChatBox: pedCreateText = "Ai creat un nou NPC cu ID-ul #FFFF00" pedCreateError = "Introdu toate detaliile!" deletePedInfo = "Ai sters NPC-ul cu ID-ul #FFFF00" deletePedError = "Introdu ID-ul !" -- Comenzi pedCreatorCommand = "addnpc" pedDeleteCommand = "delnpc" helpCommand = "npchelp" -- Functii function pomocHelp() outputChatBox("----------------------",source,0,255,0,false) outputChatBox("Ajutor Creaza NPC",source,255,255,0,false) outputChatBox("/"..pedCreatorCommand.."",source,255,255,255,false) outputChatBox("",source,255,255,0,false) outputChatBox("/"..pedDeleteCommand.."",source,255,255,255,false) outputChatBox("----------------------",source,0,255,0,false) end addCommandHandler(helpCommand, pomocHelp) gResRoot = getResourceRootElement(getThisResource()) function loadAllpeds () local root = xmlLoadFile ("peds.xml") local pedroot = xmlFindChild (root,"peds",0) if (pedroot) then allpeds = {} for i,v in ipairs (xmlNodeGetChildren(pedroot)) do local x = xmlNodeGetAttribute (v,"x") local y = xmlNodeGetAttribute (v,"y") local z = xmlNodeGetAttribute (v,"z") local nazwa = xmlNodeGetAttribute (v,"name") local number = xmlNodeGetAttribute (v,"num") local skin = xmlNodeGetAttribute (v,"skin") local rot = xmlNodeGetAttribute (v,"rot") local int = xmlNodeGetAttribute (v,"int") local dim = xmlNodeGetAttribute (v,"dim") local ped = createPed (tonumber(skin),tonumber(x),tonumber(y),tonumber(z)) setPedRotation(ped,tonumber(rot)) setElementData (ped,"pedNumber",tonumber(number)) setElementData (ped,"message",tostring(nazwa)) setElementData (ped,"message2","bPed\nID: "..tostring(number)) setElementInterior (ped, tonumber(int)) setElementDimension (ped, tonumber(dim)) -- outputDebugString ("Ped " .. tostring(nazwa) .. " [iD " .. tostring(number) .. "] loaded!") end end end addEventHandler("onResourceStart",gResRoot, loadAllpeds) addEvent("createped",true) function getPedCount () local root = xmlLoadFile ("peds.xml") local pedsRoot = xmlFindChild (root,"peds",0) local allpeds = xmlNodeGetChildren (pedsRoot) peds = 0 for i,v in ipairs (allpeds) do peds = peds+1 end xmlUnloadFile (root) return peds end addEventHandler ("createped", getRootElement(), function(name, skin, rot, intx, inty, intz, int, dim) if (intx) and (not isPedInVehicle(source)) then if (exports.global:isPlayerLeadAdmin(thePlayer)) then local x,y,z = getElementPosition (source) local pedCount = tonumber(getPedCount()) local root = xmlLoadFile ("peds.xml") local pedsRoot = xmlFindChild (root,"peds",0) local newPed = xmlCreateChild (pedsRoot,"ped") xmlNodeSetAttribute (newPed,"num",pedCount) xmlNodeSetAttribute (newPed,"x",intx) xmlNodeSetAttribute (newPed,"y",inty) xmlNodeSetAttribute (newPed,"z",intz) xmlNodeSetAttribute (newPed,"name",name) xmlNodeSetAttribute (newPed,"skin",skin) xmlNodeSetAttribute (newPed,"rot",rot) xmlNodeSetAttribute (newPed,"int",int) xmlNodeSetAttribute (newPed,"dim",dim) triggerClientEvent("showInfoFromPedSystem", source, "*"..pedCreateText2.." "..pedCount.." !", 255, 150, 0) outputChatBox ("*"..pedCreateText.." "..pedCount.." !",source,255,100,0,true) xmlSaveFile (root) xmlUnloadFile (root) reloadPeds () setTimer ( loadAllpeds, 2000, 1 ) else triggerClientEvent("showInfoFromPedSystem", source, pedAccessDeined2, 255, 0, 0) outputChatBox (pedAccessDeined,source,255,200,0,false) end else triggerClientEvent("showInfoFromPedSystem", source, pedCreateError2, 255, 0, 0) outputChatBox (pedCreateError,thePlayer,255,0,0,false) end end) function showWindow (thePlayer, commandName ) if (exports.global:isPlayerLeadAdmin(thePlayer)) then triggerClientEvent ( thePlayer, "showWindow2", thePlayer ) triggerClientEvent("showInfoFromPedSystem", thePlayer, pedCreatorOpen, 255, 255, 0) end end addCommandHandler ( pedCreatorCommand, showWindow ) function showWindow2 ( thePlayer) if (exports.global:isPlayerLeadAdmin(thePlayer)) then triggerClientEvent ( thePlayer, "showWindow", thePlayer ) end end function destroyPed ( thePlayer, commandName, pedNumber ) if (exports.global:isPlayerLeadAdmin(thePlayer)) then if ( pedNumber ) then local root = xmlLoadFile ("peds.xml") local pedroot = xmlFindChild (root,"peds",0) if (pedroot) then for i,v in ipairs (xmlNodeGetChildren(pedroot)) do local xmlnumber = xmlNodeGetAttribute (v,"num") if ( xmlnumber == pedNumber ) then xmlDestroyNode ( v ) xmlSaveFile ( root ) xmlUnloadFile ( root ) reloadPeds () triggerClientEvent("showInfoFromPedSystem", thePlayer, "*"..deletePedInfo2.." "..pedNumber.." !", 255, 255, 0) outputChatBox("*"..deletePedInfo.." "..pedNumber.." !",source, 255, 0, 0,true) setTimer ( loadAllpeds, 2000, 1 ) break end end end else triggerClientEvent("showInfoFromPedSystem", deletePedError2, 255, 255, 0) outputChatBox ( deletePedError, thePlayer, 255,100,0 ) end end end addCommandHandler ( pedDeleteCommand, destroyPed ) function reloadPeds () for i,v in ipairs ( getElementsByType("ped")) do local data = getElementData ( v, "pedNumber" ) if ( data ) then destroyElement ( v ) end end end client.lua: alpa = 150 function dodaj() alpa = alpa + 5 end --timer1 = setTimer(dodaj,100,0) function odejmuj() alpa = alpa - 5 end --timer2 = setTimer(odejmuj,100,0) function lolek() if alpa <= 150 then setTimer(dodaj,100,0) end if alpa == 250 then setTimer(odejmuj,100,0) return end end addEventHandler("onClientRender",getRootElement(),lolek) function renderIng( ) local x, y, z = getCameraMatrix( ) local dimension = getElementDimension( localPlayer ) for key, pickup in ipairs ( getElementsByType( "pickup", resourceRoot ) ) do if getElementDimension( pickup ) == dimension then local px, py, pz = getElementPosition( pickup ) local distance = getDistanceBetweenPoints3D( px, py, pz, x, y, z ) if distance <= 20 then local text = getElementData( pickup, "message" ) if text and ( distance < 2 or isLineOfSightClear( x, y, z, px, py, pz + 0.7, true, true, true, true, false, false, true, localPlayer ) ) then local sx, sy = getScreenFromWorldPosition( px, py, pz + 0.7 ) if sx and sy then local w = dxGetTextWidth( tostring( text ) ) local h = ( text and 2 or 1 ) * dxGetFontHeight( ) --dxDrawRectangle( sx - w / 2 - 5, sy - h / 2 - 5, w + 10, h + 10, tocolor( 0, 0, 0, 200 ) ) dxDrawText( tostring( text ), sx + 1, sy + 1, sx + 1, sy + 1, tocolor(0, 0, 0, alpa), math.abs(distance-25) / 13, "default-bold", "center", "center" ) dxDrawText( tostring( text ), sx, sy, sx, sy, tocolor( 255, 255, 255, 255 ), math.abs(distance-25) / 13, "default-bold", "center", "center" ) end end end end end for key, marker in ipairs ( getElementsByType( "marker", resourceRoot ) ) do if getElementDimension( marker ) == dimension then local px, py, pz = getElementPosition( marker ) local distance = getDistanceBetweenPoints3D( px, py, pz, x, y, z ) if distance <= 20 then local text = getElementData( marker, "message" ) if text and ( distance < 2 or isLineOfSightClear( x, y, z, px, py, pz + 1.7, true, true, true, true, false, false, true, localPlayer ) ) then local sx, sy = getScreenFromWorldPosition( px, py, pz + 1.7 ) if sx and sy then local w = dxGetTextWidth( tostring( text ) ) local h = ( text and 2 or 1 ) * dxGetFontHeight( ) --dxDrawRectangle( sx - w / 2 - 5, sy - h / 2 - 5, w + 10, h + 10, tocolor( 0, 0, 0, 200 ) ) dxDrawText( tostring( text ), sx + 1, sy + 1, sx + 1, sy + 1, tocolor(0, 0, 0, alpa), math.abs(distance-25) / 13, "default-bold", "center", "center" ) dxDrawText( tostring( text ), sx, sy, sx, sy, tocolor( 255, 255, 255, 255 ), math.abs(distance-25) / 13, "default-bold", "center", "center" ) end end end end end for key, playerek in ipairs ( getElementsByType( "player", resourceRoot ) ) do if getElementDimension( playerek ) == dimension then local px, py, pz = getElementPosition( playerek ) local distance = getDistanceBetweenPoints3D( px, py, pz, x, y, z ) if distance <= 20 then local text = getElementData( playerek, "message" ) if text and ( distance < 2 or isLineOfSightClear( x, y, z, px, py, pz + 1.1, true, true, true, true, false, false, true, localPlayer ) ) then local sx, sy = getScreenFromWorldPosition( px, py, pz + 1.1 ) if sx and sy then local w = dxGetTextWidth( tostring( text ) ) local h = ( text and 2 or 1 ) * dxGetFontHeight( ) --dxDrawRectangle( sx - w / 2 - 5, sy - h / 2 - 1, w + 10, h, tocolor( 0, 0, 0, 200 ) ) dxDrawText( tostring( text ), sx + 1, sy + 1, sx + 1, sy + 1, tocolor(0, 0, 0, alpa), math.abs(distance-25) / 13, "default-bold", "center", "center" ) dxDrawText( tostring( text ), sx, sy, sx, sy, tocolor( 255, 255, 255, 255 ), math.abs(distance-25) / 13, "default-bold", "center", "center" ) end end end end end for key, ped in ipairs ( getElementsByType( "ped", resourceRoot ) ) do if getElementDimension( ped ) == dimension then local px, py, pz = getElementPosition( ped ) local distance = getDistanceBetweenPoints3D( px, py, pz, x, y, z ) if distance <= 20 then local text = getElementData( ped, "message" ) if text and ( distance < 2 or isLineOfSightClear( x, y, z, px, py, pz + 1.1, true, true, true, true, false, false, true, localPlayer ) ) then local sx, sy = getScreenFromWorldPosition( px, py, pz + 1.1 ) if sx and sy then local w = dxGetTextWidth( tostring( text ) ) local h = ( text and 2 or 1 ) * dxGetFontHeight( ) --dxDrawRectangle( sx - w / 2 - 5, sy - h / 2 - 1, w + 10, h, tocolor( 0, 0, 0, 200 ) ) dxDrawText( tostring( text ), sx + 1, sy + 1, sx + 1, sy + 1, tocolor( 0, 0, 0, alpa), math.abs(distance-25) / 13, "default-bold", "center", "center" ) dxDrawText( tostring( text ), sx, sy, sx, sy, tocolor( 255, 255, 255, alpa ), math.abs(distance-25) / 13, "default-bold", "center", "center" ) end end end end end for key, vehicle in ipairs ( getElementsByType( "vehicle", resourceRoot ) ) do if getElementDimension( vehicle ) == dimension then local px, py, pz = getElementPosition( vehicle ) local distance = getDistanceBetweenPoints3D( px, py, pz, x, y, z ) if distance <= 20 then local text = getElementData( vehicle, "message" ) if text and ( distance < 2 or isLineOfSightClear( x, y, z, px, py, pz + 1.1, true, true, true, true, false, false, true, localPlayer ) ) then local sx, sy = getScreenFromWorldPosition( px, py, pz + 1.1 ) if sx and sy then local w = dxGetTextWidth( tostring( text ) ) local h = ( text and 2 or 1 ) * dxGetFontHeight( ) --dxDrawRectangle( sx - w / 2 - 5, sy - h / 2 - 1, w + 10, h, tocolor( 0, 0, 0, 200 ) ) dxDrawText( tostring( text ), sx + 1, sy + 1, sx + 1, sy + 1, tocolor(0, 0, 0, alpa), math.abs(distance-25) / 13, "default-bold", "center", "center" ) dxDrawText( tostring( text ), sx, sy, sx, sy, tocolor( 255, 255, 255, 255 ), math.abs(distance-25) / 13, "default-bold", "center", "center" ) end end end end end end addEventHandler( "onClientRender", getRootElement( ),renderIng) function renderIng2( ) local x, y, z = getCameraMatrix( ) local dimension = getElementDimension( localPlayer ) for key, pickup in ipairs ( getElementsByType( "pickup", resourceRoot ) ) do if getElementDimension( pickup ) == dimension then local px, py, pz = getElementPosition( pickup ) local distance = getDistanceBetweenPoints3D( px, py, pz, x, y, z ) if distance <= 20 then local text = getElementData( pickup, "message2" ) if text and ( distance < 2 or isLineOfSightClear( x, y, z, px, py, pz + 0.7, true, true, true, true, false, false, true, localPlayer ) ) then local sx, sy = getScreenFromWorldPosition( px, py, pz + 0.7 ) if sx and sy then local w = dxGetTextWidth( tostring( text ) ) local h = ( text and 2 or 1 ) * dxGetFontHeight( ) --dxDrawRectangle( sx - w / 2 - 5, sy - h / 2 - 5, w + 10, h + 10, tocolor( 0, 0, 0, 200 ) ) dxDrawText( "\n\n\n"..tostring( text ), sx + 1, sy + 1, sx + 1, sy + 1, tocolor( 0, 0, 0, 50 ), math.abs(distance-25) / 13, "default-bold", "center", "center" ) dxDrawText( "\n\n\n"..tostring( text ), sx, sy, sx, sy, tocolor( 255, 255, 255, 100 ), math.abs(distance-25) / 13, "default-bold", "center", "center" ) end end end end end for key, marker in ipairs ( getElementsByType( "marker", resourceRoot ) ) do if getElementDimension( marker ) == dimension then local px, py, pz = getElementPosition( marker ) local distance = getDistanceBetweenPoints3D( px, py, pz, x, y, z ) if distance <= 20 then local text = getElementData( marker, "message2" ) if text and ( distance < 2 or isLineOfSightClear( x, y, z, px, py, pz + 1.7, true, true, true, true, false, false, true, localPlayer ) ) then local sx, sy = getScreenFromWorldPosition( px, py, pz + 1.7 ) if sx and sy then local w = dxGetTextWidth( tostring( text ) ) local h = ( text and 2 or 1 ) * dxGetFontHeight( ) --dxDrawRectangle( sx - w / 2 - 5, sy - h / 2 - 5, w + 10, h + 10, tocolor( 0, 0, 0, 200 ) ) dxDrawText( "\n\n\n"..tostring( text ), sx + 1, sy + 1, sx + 1, sy + 1, tocolor( 0, 0, 0, 50 ), math.abs(distance-25) / 13, "default-bold", "center", "center" ) dxDrawText( "\n\n\n"..tostring( text ), sx, sy, sx, sy, tocolor( 255, 255, 255, 100 ), math.abs(distance-25) / 13, "default-bold", "center", "center" ) end end end end end for key, playerek in ipairs ( getElementsByType( "player", resourceRoot ) ) do if getElementDimension( playerek ) == dimension then local px, py, pz = getElementPosition( playerek ) local distance = getDistanceBetweenPoints3D( px, py, pz, x, y, z ) if distance <= 20 then local text = getElementData( playerek, "message2" ) if text and ( distance < 2 or isLineOfSightClear( x, y, z, px, py, pz + 1.1, true, true, true, true, false, false, true, localPlayer ) ) then local sx, sy = getScreenFromWorldPosition( px, py, pz + 1.1 ) if sx and sy then local w = dxGetTextWidth( tostring( text ) ) local h = ( text and 2 or 1 ) * dxGetFontHeight( ) --dxDrawRectangle( sx - w / 2 - 5, sy - h / 2 - 1, w + 10, h, tocolor( 0, 0, 0, 200 ) ) dxDrawText( "\n\n\n"..tostring( text ), sx + 1, sy + 1, sx + 1, sy + 1, tocolor( 0, 0, 0, 50 ), math.abs(distance-25) / 13, "default-bold", "center", "center" ) dxDrawText( "\n\n\n"..tostring( text ), sx, sy, sx, sy, tocolor( 255, 255, 255, 100 ), math.abs(distance-25) / 13, "default-bold", "center", "center" ) end end end end end for key, ped in ipairs ( getElementsByType( "ped", resourceRoot ) ) do if getElementDimension( ped ) == dimension then local px, py, pz = getElementPosition( ped ) local distance = getDistanceBetweenPoints3D( x, y, z, px, py, pz ) if distance <= 20 then local text = getElementData( ped, "message2" ) if text and ( distance < 2 or isLineOfSightClear( x, y, z, px, py, pz + 1.1, true, true, true, true, false, false, true, localPlayer ) ) then local sx, sy = getScreenFromWorldPosition( px, py, pz + 1.1 ) if sx and sy then local w = dxGetTextWidth( tostring( text ) ) local h = ( text and 2 or 1 ) * dxGetFontHeight( ) --dxDrawRectangle( sx - w / 2 - 5, sy - h / 2 - 1, w + 10, h, tocolor( 0, 0, 0, 200 ) ) dxDrawText( "\n\n\n"..tostring( text ), sx + 1, sy + 1, sx + 1, sy + 1, tocolor( 0, 0, 0, math.abs(distance-20) ), math.abs(distance-25) / 15, "default-bold", "center", "center" ) dxDrawText( "\n\n\n"..tostring( text ), sx, sy, sx, sy, tocolor( 255, 255, 255, math.abs(distance-20)*2 ), math.abs(distance-25) / 15, "default-bold", "center", "center" ) end end end end end for key, vehicle in ipairs ( getElementsByType( "vehicle", resourceRoot ) ) do if getElementDimension( vehicle ) == dimension then local px, py, pz = getElementPosition( vehicle ) local distance = getDistanceBetweenPoints3D( px, py, pz, x, y, z ) if distance <= 20 then local text = getElementData( vehicle, "message2" ) if text and ( distance < 2 or isLineOfSightClear( x, y, z, px, py, pz + 1.1, true, true, true, true, false, false, true, localPlayer ) ) then local sx, sy = getScreenFromWorldPosition( px, py, pz + 1.1 ) if sx and sy then local w = dxGetTextWidth( tostring( text ) ) local h = ( text and 2 or 1 ) * dxGetFontHeight( ) --dxDrawRectangle( sx - w / 2 - 5, sy - h / 2 - 1, w + 10, h, tocolor( 0, 0, 0, 200 ) ) dxDrawText( "\n\n\n"..tostring( text ), sx + 1, sy + 1, sx + 1, sy + 1, tocolor( 0, 0, 0, 50 ), math.abs(distance-25) / 13, "default-bold", "center", "center" ) dxDrawText( "\n\n\n"..tostring( text ), sx, sy, sx, sy, tocolor( 255, 255, 255, 100 ), math.abs(distance-25) / 13, "default-bold", "center", "center" ) end end end end end end addEventHandler( "onClientRender", getRootElement( ),renderIng2) gui.lua function guiClicked() if (source == closeButton) then guiSetVisible ( createPedWindow, false ) showCursor ( false ) unbindKey ( "mouse2","down", showCursor12 ) guiSetInputEnabled ( false ) elseif (source == getpedPosButton) then local x,y,z = getElementPosition ( getLocalPlayer()) local r = getPedRotation ( getLocalPlayer()) local int = getElementInterior ( getLocalPlayer()) local dim = getElementDimension ( getLocalPlayer()) local skin = getElementModel ( getLocalPlayer()) local name = getPlayerName ( getLocalPlayer()) guiSetText ( pedXEdit, x ) guiSetText ( pedYEdit, y ) guiSetText ( pedZEdit, z ) guiSetText ( pedREdit, r ) guiSetText ( pedIntEdit, int ) guiSetText ( pedDimEdit, dim ) guiSetText ( skinEdit, skin ) guiSetText ( nameEdit, name ) elseif (source == createPedButton) then local name = guiGetText (nameEdit) local intx = guiGetText (pedXEdit) local inty = guiGetText (pedYEdit) local intz = guiGetText (pedZEdit) local rot = guiGetText (pedREdit) local skin = guiGetText (skinEdit) local int = guiGetText (pedIntEdit) local dim = guiGetText (pedDimEdit) if not ( name == "" ) or ( intx == "" ) and ( inty == "" ) and ( intz == "" ) and ( rot == "" ) or ( skin == "" ) or ( skin == "Skin" ) then triggerServerEvent ( "createped", getLocalPlayer(), name, skin, rot, intx, inty, intz, int, dim ) end end end addEventHandler ( "onClientGUIClick", getRootElement(), guiClicked) createPedWindow = guiCreateWindow(81, 163, 304, 297, "Creaza un NPC", false) skinLabel = guiCreateLabel(10, 23, 31, 25, "Skin:", false,createPedWindow) guiLabelSetColor(skinLabel,255,255,255) guiLabelSetVerticalAlign(skinLabel,"top") guiLabelSetHorizontalAlign(skinLabel,"left",false) guiSetFont(skinLabel,"default-bold-small") skinEdit = guiCreateEdit(42, 23, 252, 25, "ID Skin", false,createPedWindow) nameLabel = guiCreateLabel(10, 48, 31, 25, "Nume:", false,createPedWindow) guiLabelSetColor(nameLabel,255,255,255) guiLabelSetVerticalAlign(nameLabel,"top") guiLabelSetHorizontalAlign(nameLabel,"left",false) guiSetFont(nameLabel,"default-bold-small") pedXLabel = guiCreateLabel(10, 92, 15, 21, "X:", false, createPedWindow) guiLabelSetColor(pedXLabel,255,255,0) guiLabelSetVerticalAlign(pedXLabel,"top") guiLabelSetHorizontalAlign(pedXLabel,"left",false) guiSetFont(pedXLabel,"default-bold-small") pedYLabel = guiCreateLabel(10, 117, 15, 21, "Y:", false, createPedWindow) guiLabelSetColor(pedYLabel,255,255,0) guiLabelSetVerticalAlign(pedYLabel,"top") guiLabelSetHorizontalAlign(pedYLabel,"left",false) guiSetFont(pedYLabel,"default-bold-small") pedZLabel = guiCreateLabel(10, 142, 15, 21, "Z:", false,createPedWindow) guiLabelSetColor(pedZLabel,255,255,0) guiLabelSetVerticalAlign(pedZLabel,"top") guiLabelSetHorizontalAlign(pedZLabel,"left",false) guiSetFont(pedZLabel,"default-bold-small") pedRLabel = guiCreateLabel(10, 167, 15, 18, "R:", false,createPedWindow) guiLabelSetColor(pedRLabel,255,255,0) guiLabelSetVerticalAlign(pedRLabel,"top") guiLabelSetHorizontalAlign(pedRLabel,"left",false) guiSetFont(pedRLabel,"default-bold-small") pedIntLabel = guiCreateLabel(10, 195, 53, 21, "Interior:", false,createPedWindow) guiLabelSetColor(pedRLabel,0,255,255) guiLabelSetVerticalAlign(pedRLabel,"top") guiLabelSetHorizontalAlign(pedRLabel,"left",false) guiSetFont(pedRLabel,"default-bold-small") pedDimLabel = guiCreateLabel(10, 219, 63, 21, "Dimensiune:", false,createPedWindow) guiLabelSetColor(pedRLabel,0,255,255) guiLabelSetVerticalAlign(pedRLabel,"top") guiLabelSetHorizontalAlign(pedRLabel,"left",false) guiSetFont(pedRLabel,"default-bold-small") nameEdit = guiCreateEdit(42, 48, 252, 25, "Nume NPC", false,createPedWindow) pedXEdit = guiCreateEdit(25, 88, 269, 25, "", false, createPedWindow) pedYEdit = guiCreateEdit(25, 113, 269, 25, "", false, createPedWindow) pedZEdit = guiCreateEdit(25, 138, 269, 25, "", false, createPedWindow) pedREdit = guiCreateEdit(25, 163, 269, 25, "", false, createPedWindow) pedIntEdit = guiCreateEdit(63, 192, 71, 24, "", false, createPedWindow) pedDimEdit = guiCreateEdit(73, 216, 71, 24, "", false, createPedWindow) getpedPosButton = guiCreateButton(9, 70, 285, 18, "Ia Pozitia Mea", false,createPedWindow) createPedButton = guiCreateButton(149, 192, 145, 54, "CREAZA", false,createPedWindow) closeButton = guiCreateButton(9, 263, 38, 24, "X", false,createPedWindow) authorLabel = guiCreateLabel(123, 254, 171, 33, "", false, createPedWindow) guiLabelSetColor(authorLabel, 241, 238, 0) guiLabelSetHorizontalAlign(authorLabel, "right", false) guiLabelSetVerticalAlign(authorLabel, "bottom") guiSetVisible ( createPedWindow, false ) function showWindow (commandName) guiSetVisible ( createPedWindow, true ) showCursor ( true ) bindKey ( "mouse2","down", showCursor12 ) end addEvent ( "showWindow2", true ) addEventHandler ( "showWindow2", getRootElement(), showWindow ) function showCursor12 () if ( isCursorShowing() == true ) then showCursor ( false ) else showCursor ( true ) end end addEventHandler ("onClientMouseEnter",getRootElement(), function () if source == createPedWindow or source == nameEdit then guiSetInputEnabled ( true ) end end) addEventHandler ("onClientMouseLeave",getRootElement(), function () if source == createPedWindow or source == nameEdit then guiSetInputEnabled ( false ) end end) Link to comment
..:D&G:.. Posted June 5, 2013 Author Share Posted June 5, 2013 No one knows how to fix this..? Link to comment
Shuvit Posted June 5, 2013 Share Posted June 5, 2013 Show us the script, else we can't try to fix it. Link to comment
dugasz1 Posted June 5, 2013 Share Posted June 5, 2013 outputChatBox ("Introdu ID-ul !",thePlayer,255,0,0,false) Maybe like this Link to comment
..:D&G:.. Posted June 6, 2013 Author Share Posted June 6, 2013 What is the function that loads data from a MySQL table? Link to comment
..:D&G:.. Posted June 6, 2013 Author Share Posted June 6, 2013 I can't really understand the wiki How can I load the position, skin, etc? Like this code that loads data from XML... function loadAllpeds () local root = xmlLoadFile ("peds.xml") local pedroot = xmlFindChild (root,"peds",0) if (pedroot) then allpeds = {} for i,v in ipairs (xmlNodeGetChildren(pedroot)) do local x = xmlNodeGetAttribute (v,"x") local y = xmlNodeGetAttribute (v,"y") local z = xmlNodeGetAttribute (v,"z") local nazwa = xmlNodeGetAttribute (v,"name") local number = xmlNodeGetAttribute (v,"num") local skin = xmlNodeGetAttribute (v,"skin") local rot = xmlNodeGetAttribute (v,"rot") local int = xmlNodeGetAttribute (v,"int") local dim = xmlNodeGetAttribute (v,"dim") local ped = createPed (tonumber(skin),tonumber(x),tonumber(y),tonumber(z)) setPedRotation(ped,tonumber(rot)) setElementData (ped,"pedNumber",tonumber(number)) setElementData (ped,"message",tostring(nazwa)) setElementData (ped,"message2","bPed\nID: "..tostring(number)) setElementInterior (ped, tonumber(int)) setElementDimension (ped, tonumber(dim)) -- outputDebugString ("Ped " .. tostring(nazwa) .. " [iD " .. tostring(number) .. "] loaded!") end end end addEventHandler("onResourceStart",gResRoot, loadAllpeds) But I want to load all that from the mysql database. Link to comment
dugasz1 Posted June 6, 2013 Share Posted June 6, 2013 I'm useing mySQL module then i can write example for you whit it First install it: https://wiki.multitheftauto.com/wiki/Mysql And you need a mysql server(xammp for homemade server) host = "127.0.0.1" -- host ( this is the Localhost now) username = "root" -- Database Username password = "" -- Database Password (in xammp no pass) db = "accounts" -- Database ( Where you got your tables ) handler = mysql_connect( host, username, password, db ) function getPlayerDatasFromSQL () pName = getPlayerName(source) playerData_q = mysql_query(handler,"SELECT * FROM accounts WHERE AccountName = '"..pName.."';") playerData_assoc = mysql_fetch_assoc(playerData_q) -- Whit it you can use the queryed datas from the player setElementHealth ( source, playerData_assoc['hp'] ) -- Use like this end addEventHandler ( "onPlayerJoin", getRootElement(), getPlayerDatasFromSQL) Link to comment
..:D&G:.. Posted June 7, 2013 Author Share Posted June 7, 2013 I have xampp and the mysql database Thanks for the example, I will try that as soon I get home Link to comment
..:D&G:.. Posted June 9, 2013 Author Share Posted June 9, 2013 How do I load the X,Y,Z,Dimension,Interior, Skin and Name of the npc from a table? And I want to load all the colums. function loadNpcs () npcsData_q = mysql_query(handler,"SELECT * FROM npc WHERE x='" .. mysql:escape_string(x1) .. "', y='" .. mysql:escape_string(y1) .. "', z='" .. mysql:escape_string(z1) .. "', skin='" .. mysql:escape_string(getElementModel(thePlayer)) .. "'") npcsData_assoc = mysql_fetch_assoc(playerData_q) end addEventHandler ( "onPlayerJoin", getRootElement(), getPlayerDatasFromSQL) addEventHandler("onResourceStart",gResRoot, loadAllpeds) Link to comment
dugasz1 Posted June 9, 2013 Share Posted June 9, 2013 local ped_q = mysql_query(handler,"SELECT * FROM npc") -- you need query all the npcs if (ped_q) then while true do -- do it whit all the npc local ped_assoc= mysql_fetch_assoc(kocsi_q) if (not ped_assoc) then break end local pedtext = "ped" local thePed = pedtext .. ped_assoc['ID'] -- this isn't the ped model id just an auto increted number in mysql. Whit this you can identify your ped thePed = createPed ( ped_assoc['model'], ped_assoc['x'], ped_assoc['y'], ped_assoc['z'] ) setElementData (thePed, "idPed", ped_assoc['ID']) -- i offer you to set in the ped his id then you can always identify it end mysql_free_result(kocsi_q) -- Free the result end Link to comment
..:D&G:.. Posted June 16, 2013 Author Share Posted June 16, 2013 Dugasz, I see that you are good at mysql, can you make me a table using this code please? This is the first time I have to handle with tables and such... addEventHandler( "onResourceStart", resourceRoot, function( ) -- check for our table to exist if not exports.sql:create_table( '3dtext', { { name = 'textID', type = 'int(10) unsigned', auto_increment = true, primary_key = true }, { name = 'text', type = 'text' }, { name = 'x', type = 'float' }, { name = 'y', type = 'float' }, { name = 'z', type = 'float' }, { name = 'interior', type = 'tinyint(3) unsigned' }, { name = 'dimension', type = 'int(10) unsigned' }, } ) then cancelEvent( ) return end Link to comment
dugasz1 Posted June 18, 2013 Share Posted June 18, 2013 This code must make this table, but i think you haven't got the sql resources. Then go in phpmyadmin open a database, click to the sql menu and paste it and run: CREATE TABLE IF NOT EXISTS `3dtext` ( `textID` int(10) NOT NULL AUTO_INCREMENT, `text` text COLLATE utf8_hungarian_ci NOT NULL, `x` float NOT NULL, `y` float NOT NULL, `z` float NOT NULL, `interior` int(10) NOT NULL, `dimension` int(10) NOT NULL, PRIMARY KEY (`textID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_hungarian_ci AUTO_INCREMENT=1 ; Link to comment
..:D&G:.. Posted June 18, 2013 Author Share Posted June 18, 2013 I have the sql resource . But thats just an example, I want the table to have the pedid, skinid, x,y,z, etc for this resource, the code from other resource Link to comment
dugasz1 Posted June 18, 2013 Share Posted June 18, 2013 hmm... use this SQL code it will made it Link to comment
..:D&G:.. Posted June 19, 2013 Author Share Posted June 19, 2013 Ah, you still don't get me =)) So, I got that code from a resource, not sql or mysql, and I need you to configure that so it saves the ped skin id, ped it, ped name etc. Now, the code saves other things, for that other resource. 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