• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!
  • 2026 staff recruitment is open! Check it out and consider applying!

my script dont work :( error sintaxis? (Creature event)

beenii

Well-Known Member
Joined
Jul 26, 2010
Messages
586
Solutions
1
Reaction score
58
Code:
local t = {
    redPos = {x = 370, y = 67, z = 6},
    greenPos = {x = 362, y = 67, z = 6},
    redStorage = 70500,
    greenStorage = 80500,
    redFlag = 8000,
    greenFlag = 9000
}

    local PlayerDetect = 12822   

   



   
function onStatsChange(cid, attacker, type, combat, value)

--- config red bandera ---
local storageXred = 9090
local storageYred = 9191
local storageZred = 9292   
local flagRedItemID = 8618 -- flag red item ID
local FlagRedAid = 11060
local posDeathRed = {x = getGlobalStorageValue(storageXred).x, y = getGlobalStorageValue(storageYred).y, z = getGlobalStorageValue(storageZred).z}
local returnFlagRed = {x = 361, y = 87, z = 5}
local RedflagItem = getTileItemById(posDeathRed, flagRedItemID)       

                --- config green bandera ---   
local storageXgreen = 8080
local storageYgreen = 8181
local storageZgreen = 8282   
local flagGreenItemID = 8621 -- flag red item ID
local FlagGreenAid = 11050
local posDeathGreen = {x = getGlobalStorageValue(storageXgreen).x, y = getGlobalStorageValue(storageYgreen).y, z = getGlobalStorageValue(storageZgreen).z}
local returnFlagGreen = {x = 363, y = 49, z = 5}
local GreenflagItem = getTileItemById(posDeathGreen, flagGreenItemID)


    if type == STATSCHANGE_HEALTHGAIN or getCreatureHealth(cid) > value or not isCreature(attacker) then
    return true
    end


            for _, pid in ipairs(getPlayersOnline()) do
                if getPlayerStorageValue(cid, t.redFlag) == 1 then
       
               
                setPlayerStorageValue(cid, t.redFlag, 0)       
                setGlobalStorageValue(storageXred, getPlayerPosition(cid).x)
                setGlobalStorageValue(storageYred, getPlayerPosition(cid).y)
                setGlobalStorageValue(storageZred, getPlayerPosition(cid).z)
               
            local FlagGreen =  doCreateItem(flagGreenItemID, 1, posDeathGreen)
            doItemSetAttribute(FlagGreen, "aid", FlagGreenAid)   
           

           addEvent(removeGreenFlag,10* 1000)       
               
               
                if  getPlayerStorageValue(pid, PlayerDetect ) == 1 then
                doPlayerSendTextMessage(pid,MESSAGE_STATUS_WARNING, ""..getPlayerName(cid).." Perdio la bandera del equipo Verde.")
                doPlayerSendTextMessage(pid, MESSAGE_STATUS_CONSOLE_RED, ""..getPlayerName(cid).." Perdio la bandera del equipo Verde.") ---- broad players event
                elseif getPlayerStorageValue(cid, t.greenFlag) == 1 then --- GREEN FLAG
               

               
               
                setPlayerStorageValue(cid, t.greenFlag, 0)       
                setGlobalStorageValue(storageXgreen, getPlayerPosition(cid).x)
                setGlobalStorageValue(storageYgreen, getPlayerPosition(cid).y)
                setGlobalStorageValue(storageZgreen, getPlayerPosition(cid).z)                   
                   
                local FlagRed =  doCreateItem(flagRedItemID, 1, posDeathRed)
                doItemSetAttribute(FlagRed, "aid", FlagRedAid)   
                   
           addEvent(removeRedFlag,10* 1000)
                   
                    if  getPlayerStorageValue(pid, PlayerDetect ) == 1 then
                    doPlayerSendTextMessage(pid,MESSAGE_INFO_DESCR, ""..getPlayerName(cid).."Perdio la bandera del equipo Rojo.")
                    doPlayerSendTextMessage(pid, MESSAGE_STATUS_CONSOLE_BLUE, ""..getPlayerName(cid).." Perdio la bandera del equipo Rojo.")

                end
               
                if getPlayerStorageValue(cid, t.redStorage) == 1 then
                    doTeleportThing(cid, t.redPos, true)
                    doSendMagicEffect(getCreaturePosition(cid), 10)
                elseif getPlayerStorageValue(cid, t.greenStorage) == 1 then
                    doTeleportThing(cid, t.greenPos, true)
                    doSendMagicEffect(getCreaturePosition(cid), 10)
                end
            end
            return false
        end
    end
    return true
end




function removeRedFlag()
if RedflagItem.uid > 0 and doRemoveItem(RedflagItem.uid) then
local FlagRed =  doCreateItem(flagRedItemID, 1, returnFlagRed)
doItemSetAttribute(FlagRed, "aid", FlagRedAid)   
end
end
function removeGreenFlag()
if GreenflagItem.uid > 0 and doRemoveItem(GreenflagItem.uid) then
local FlagGreen =  doCreateItem(flagGreenItemID, 1, posDeathGreen)
doItemSetAttribute(FlagGreen, "aid", FlagGreenAid)
end
end


dont have error on consola, only dont work xD
 
Back
Top