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