Ghazer
Member
- Joined
- Mar 13, 2009
- Messages
- 350
- Reaction score
- 6
Hello...
Anyone can repair combat and attack on this event because doesn't work... all event work good but I need this feature for players from the same team can not attack each other
I could fix a lots error of events but I cant fix this please help!
That part doesn't work, idk why =/
Anyone can repair combat and attack on this event because doesn't work... all event work good but I need this feature for players from the same team can not attack each other
I could fix a lots error of events but I cant fix this please help!
LUA:
<?xml version="1.0" encoding="UTF-8"?>
<mod name="Team War" version="1.0" author="Bogart" contact="otland.net" enabled="yes">
<description>
This should teleport all players to a new random town in intervals and add them into a team.
</description>
<config name="t"><![CDATA[
t = {
a = {
[-1] = {
a = "fagarians",
b = 1000,
c = "conditionRed"
},
[1] = {
a = "homosexualsins",
b = 1001,
c = "conditionBlue"
},
},
b = 1000,
c = 3,
d = {1,3}
}
fromPosition = {x = 1444, y = 375, z = 0} -- north west corner (remember using z= 0 coz players might be on a higher floor)
toPosition = {x = 1720, y = 620, z = 15} -- south east corner (remember using z= 15 coz players might be on a lower floor)
]]></config>
<movevent type="StepIn" actionid ="8271" event="script"><![CDATA[
domodlib('t')
local conditionBlue = createConditionObject(CONDITION_OUTFIT)
setConditionParam(conditionBlue, CONDITION_PARAM_TICKS, 1800 * 1000)
addOutfitCondition(conditionBlue, {lookType = 152, lookHead = 87, lookBody = 87, lookLegs = 87, lookFeet = 87})
local conditionRed = createConditionObject(CONDITION_OUTFIT)
setConditionParam(conditionRed, CONDITION_PARAM_TICKS, 1800 * 1000)
addOutfitCondition(conditionRed, {lookType = 143, lookHead = 94, lookBody = 94, lookLegs = 94, lookFeet = 94})
function onStepIn(cid, item, pos)
if getPlayerGroupId(cid) < 3 then
if getGlobalStorageValue(t.b) == 1 then
doPlayerSetTown(cid, getGlobalStorageValue(3454))
doTeleportThing(cid, getPlayerMasterPos(cid))
setPlayerStorageValue(cid, t.a[-1], 1)
doAddCondition(cid, conditionRed)
setGlobalStorageValue(t.b, -1)
else
doPlayerSetTown(cid, getGlobalStorageValue(3454)+2)
doTeleportThing(cid, getPlayerMasterPos(cid))
setPlayerStorageValue(cid, t.a[1], 1)
doAddCondition(cid, conditionBlue)
setGlobalStorageValue(t.b, 1)
end
end
return TRUE
end
]]></movevent>
<event type="logout" name="tout" event="script"><![CDATA[
domodlib('t')
function onLogout(cid)
if getPlayerStorageValue(cid, t.a[-1].b) == 1 then
setPlayerStorageValue(cid, t.a[-1].b, -1)
setGlobalStorageValue(t.b, 1)
elseif getPlayerStorageValue(cid, t.a[1].b) == 1 then
setPlayerStorageValue(cid, t.a[1].b, -1)
setGlobalStorageValue(t.b, -1)
end
return true
end
]]></event>
<event type="login" name="register" event="script"><![CDATA[
domodlib('t')
function onLogin(cid)
registerCreatureEvent(cid, "tded")
registerCreatureEvent(cid, "tout")
registerCreatureEvent(cid, "tcom")
registerCreatureEvent(cid, "tattack")
return true
end
]]></event>
<movevent type="StepIn" actionid ="8272" event="script"><![CDATA[
domodlib('t')
function onStepIn(cid, item, pos)
if getPlayerStorageValue(cid, t.a[-1]) == 1 then
setPlayerStorageValue(cid, t.a[-1], 0)
setGlobalStorageValue(t.b, 1)
elseif getPlayerStorageValue(cid, t.a[1]) == 1 then
setPlayerStorageValue(cid, t.a[-1], 0)
setGlobalStorageValue(t.b, -1)
end
return true
end
]]></movevent>
<event type="prepareDeath" name="tded" event="script"><![CDATA[
domodlib('t')
function onPrepareDeath(cid)
if getPlayerStorageValue(cid, t.a[-1].b) == 1 then
setPlayerStorageValue(cid, t.a[-1].b, -1)
setGlobalStorageValue(t.b, 1)
elseif getPlayerStorageValue(cid, t.a[1].b) == 1 then
setPlayerStorageValue(cid, t.a[1].b, -1)
setGlobalStorageValue(t.b, -1)
end
return true
end
]]></event>
<event type="combat" name="tcom" event="script"><![CDATA[
domodlib('t')
function onCombat(cid, target)
if(getGlobalStorageValue(t.a) == 1) then
if isPlayer(cid) and isPlayer(target) then
if getPlayerStorageValue(cid, t.a[-1]) == 1 and getPlayerStorageValue(target, t.a[-1]) == 1 then
if getPlayerStorageValue(cid, t.a[1]) == getPlayerStorageValue(target, t.a[1]) then
return doPlayerSendCancel(cid, "Sorry, you cannot attack your own team.") and false
end
end
end
end
return true
end
]]>></event>
<event type="attack" name="tattack" event="script"><![CDATA[
domodlib('t')
function onAttack(cid, target)
if(getGlobalStorageValue(t.a) == 1) then
if isPlayer(cid) and isPlayer(target) then
if getPlayerStorageValue(cid, t.a[-1]) == 1 and getPlayerStorageValue(target, t.a[-1]) == 1 then
if getPlayerStorageValue(cid, t.a[1]) == getPlayerStorageValue(target, t.a[1]) then
return doPlayerSendCancel(cid, "Sorry, you cannot attack your own team.") and false
end
end
end
end
return true
end
]]>></event>
<globalevent name="Map Change" interval="1200000" event="script"><![CDATA[
domodlib('t')
function onThink(interval, lastExecution, thinkInterval)
repeat
RDM = math.random(1,#config.temples)
until RDM ~= getGlobalStorageValue(3454) and isInArray(config.temples, RDM)
for _, pid in ipairs(getPlayersOnline()) do
if getPlayerAccess(pid) < config.access and isInRange(getThingPosition(pid), fromPosition, toPosition) then
doPlayerSetTown(pid, config.temples[RDM])
doTeleportThing(pid, (getTownTemplePosition(config.temples[RDM])), false) doRemoveCondition(pid, CONDITION_INFIGHT)
doCreatureAddHealth(pid, getCreatureMaxHealth(pid))
doCreatureAddMana(pid, (getCreatureMaxMana(pid) - getCreatureMana(pid)))
doBroadcastMessage("Map has been changed to "..getTownName(config.temples[RDM]).."! next map change will be in 20 minutes! have a nice fight!", MESSAGE_STATUS_WARNING)
setGlobalStorageValue(3454, config.temples[RDM])
end
end
return true
end
]]></globalevent>
</mod>
That part doesn't work, idk why =/
LUA:
<event type="combat" name="tcom" event="script"><![CDATA[
domodlib('t')
function onCombat(cid, target)
if(getGlobalStorageValue(t.a) == 1) then
if isPlayer(cid) and isPlayer(target) then
if getPlayerStorageValue(cid, t.a[-1]) == 1 and getPlayerStorageValue(target, t.a[-1]) == 1 then
if getPlayerStorageValue(cid, t.a[1]) == getPlayerStorageValue(target, t.a[1]) then
return doPlayerSendCancel(cid, "Sorry, you cannot attack your own team.") and false
end
end
end
end
return true
end
Last edited: