Arsilex Posted June 25, 2012 Share Posted June 25, 2012 function buyMap(thePlayer,mapName) if mapIsAlreadySet == false then if not (mapName == "") then local playerCash = tonumber(loadPlayerData(thePlayer,"cash")) if playerCash >= mapCost then executeCommandHandler("setmap",thePlayer,mapName) savePlayerData(thePlayer,"cash",playerCash-mapCost) outputChatBox("#FFFFFFNextmap: "..getPlayerName(thePlayer).."#FFFFFF has bought a next map!",getRootElement(),255,255,255,true) outputChatBox("#FFFFFFNextmap: #00AAFF"..mapName,getRootElement(),255,255,255,true) mapIsAlreadySet = thePlayer local oldmapbuys = loadPlayerData(thePlayer,"mapBuys") savePlayerData(thePlayer,"mapBuys", oldmapbuys + 1) CheckAchievement(thePlayer,13) scoreboardRefresh(thePlayer) else outputChatBox("#00AAFF# #FFFFFFYou don't have enough money to set a map!",thePlayer,255,255,255,true) end else outputChatBox("#00AAFF# #FFFFFFPlease select a map from the list first!",thePlayer,255,255,255,true) end else outputChatBox("#00AAFF# #FFFFFFA map is already set at the moment! Please try again later.",thePlayer,255,255,255,true) end end function unbuyMap(thePlayer) if mapIsAlreadySet ~= false then if mapIsAlreadySet == thePlayer then executeCommandHandler("setmap",thePlayer,nil) local playerCash = tonumber(loadPlayerData(thePlayer,"cash")) savePlayerData(thePlayer,"cash",playerCash+(mapCost/4)*3) outputChatBox("#FFFFFFNextmap: "..getPlayerName(thePlayer).."#FFFFFF has unbought a next map!",getRootElement(),255,255,255,true) mapIsAlreadySet = false local oldmapbuys = loadPlayerData(thePlayer,"mapBuys") savePlayerData(thePlayer,"mapBuys", oldmapbuys - 1) CheckAchievement(thePlayer,13) scoreboardRefresh(thePlayer) else outputChatBox("#00AAFF# #FFFFFFYou didn't buy that map!",thePlayer,255,255,255,true) end else outputChatBox("#00AAFF# #FFFFFFNo map has been bought!",thePlayer,255,255,255,true) end end function resetMapSetStatus() mapIsAlreadySet = false end addEventHandler("onMapStarting",getRootElement(),resetMapSetStatus) function getServerMaps (loadList,s) local tableOut if loadList then tableOut = {} -- local deletedMaps = {} local gamemodes = {} gamemodes = call(getResourceFromName("mapmanager"), "getGamemodes") for id,gamemode in ipairs (gamemodes) do tableOut[id] = {} tableOut[id].name = getResourceInfo(gamemode, "name") or getResourceName(gamemode) tableOut[id].resname = getResourceName(gamemode) tableOut[id].maps = {} local maps = call(getResourceFromName("mapmanager"), "getMapsCompatibleWithGamemode" , gamemode) for _,map in ipairs (maps) do table.insert(tableOut[id]["maps"] ,{name = getResourceInfo(map, "name") or getResourceName(map), resname = getResourceName(map)}) end table.sort(tableOut[id]["maps"], sortCompareFunction) end table.sort((tableOut), sortCompareFunction) table.insert(tableOut, {name = "no gamemode", resname = "no gamemode", maps = {}}) local countGmodes = #tableOut local maps = call(getResourceFromName("mapmanager"), "getMapsCompatibleWithGamemode") for id,map in ipairs (maps) do -- if fileOpen(":"..getResourceName(map).."/deleted") then -- table.insert(deletedMaps ,{name = getResourceInfo(map, "name") or getResourceName(map), resname = getResourceName(map)}) -- else table.insert(tableOut[countGmodes]["maps"] ,{name = getResourceInfo(map, "name") or getResourceName(map), resname = getResourceName(map)}) -- end end -- table.sort(deletedMaps, sortCompareFunction) table.sort(tableOut[countGmodes]["maps"], sortCompareFunction) -- table.insert(tableOut, {name = "deleted maps", resname = "deleted maps", maps = {}}) -- local countGmodes = countGmodes + 1 -- tableOut[countGmodes]["maps"] = deletedMaps end local map = call(getResourceFromName("mapmanager"), "getRunningGamemodeMap") local gamemode = call(getResourceFromName("mapmanager"), "getRunningGamemode") gamemode = gamemode and getResourceName(gamemode) or "N/A" map = map and getResourceName(map) or "N/A" callClientFunction(loadList,"loadMaps", tableOut, gamemode, map, s) end function sortCompareFunction(s1, s2) if type(s1) == "table" and type(s2) == "table" then s1, s2 = s1.name, s2.name end s1, s2 = s1:lower(), s2:lower() if s1 == s2 then return false end local byte1, byte2 = string.byte(s1:sub(1,1)), string.byte(s2:sub(1,1)) if not byte1 then return true elseif not byte2 then return false elseif byte1 < byte2 then return true elseif byte1 == byte2 then return sortCompareFunction(s1:sub(2), s2:sub(2)) else return false end end que falla de alli al comprar el mapa no lo setea Link to comment
Alexs Posted June 25, 2012 Share Posted June 25, 2012 Seguro que ese script es tuyo?? que dice el debugscript 3 ?? Link to comment
Arsilex Posted June 25, 2012 Author Share Posted June 25, 2012 nono no es mio es de un amigo que se lo pasaron y me pidió arreglarlo pero no se que le pasa Link to comment
Arsilex Posted June 25, 2012 Author Share Posted June 25, 2012 Eso cuando pongo next pero cuando inicio el panel osea /start panel pone lo siguiente WARNING: panel\stats-panel_s.lua:742: fileOpen; unable to load file Link to comment
Recommended Posts