• 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!

Spell [Request] home teleport rune :)

Zerity

New Member
Joined
Jul 7, 2009
Messages
89
Reaction score
0
Hallo i wonder if anyone can make me a script on a rune
that teleports you to temple ..
and if you can make it cooldown 30 min its great
i mean like the heartstone in wow you know what i mean but only to 1 city :)

the rune ID
2297.

x: 160
y: 50
z: 7

:D
 
spells.xml
HTML:
<rune name="Home Rune" id="2297" charges="1" lvl="20" maglv="0" exhaustion="1000" aggressive="0" script="home_rune.lua"/>

home_rune.lua

Lua:
local newPos = {
	x = 160,
	y = 50,
	z = 7
}

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_POFF)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, FALSE)

function onCastSpell(cid, var)
	doTeleportThing(cid,newPos)
	doSendMagicEffect(newPos,10)
	return doCombat(cid, combat, var)
end

Not Tested.

I hope it work :thumbup:.

Regards,
Shawak
 
I've added cooldown to Shawak's script:
Code:
local newPos = {
        x = 160,
        y = 50,
        z = 7
}

local delayInSeconds = 1800

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_POFF)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, FALSE)

function onCastSpell(cid, var)
	if (getPlayerStorageValue(cid, 1234) < os.clock()) then
		setPlayerStorageValue(cid, 1234, (os.clock() + delayInSeconds))
       		doTeleportThing(cid,newPos)
		doSendMagicEffect(newPos,10)
		doCombat(cid, combat, var)
		return true
	end
	return true
end
 
Why not ? ;]

First return is called only if cooldown is done, second only if player has cooldown yet, you can change it to return 2 other combats, for example: first with magic stars effect, second with stun effect xd
 
i think there sould be function "if pz free then" cuz pk could tp to temple
and it should tp to temple of cid, not to fixed position

Lua:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_POFF)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, FALSE)

function onCastSpell(cid, var)
	if getCreatureCondition(cid, CONDITION_INFIGHT) == FALSE then
       		doTeleportThing(cid,(getPlayerMasterPos(cid))
		doSendMagicEffect(newPos,10)
		doCombat(cid, combat, var)
	else
		doPlayerSendtextMessage(cid,18,"First lose pz.")
	end
	return TRUE
end

Regards,
Shawak
 
Cool its works with that script chojak edited :) i think im going to use that becuse in this script

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_POFF)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, FALSE)

function onCastSpell(cid, var)
if getCreatureCondition(cid, CONDITION_INFIGHT) == FALSE then
doTeleportThing(cid,(getPlayerMasterPos(cid))
doSendMagicEffect(newPos,10)
doCombat(cid, combat, var)
else
doPlayerSendtextMessage(cid,18,"First lose pz.")
end
return TRUE
end

there is nothing that says doplayergetnewpos or something like that :)
if you want you can edit the chojak edited script and put PZ on it :p
 
Code:
local delayInSeconds = 1800

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_POFF)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, FALSE)

function onCastSpell(cid, var)
	if (hasCondition(cid, CONDITION_INFIGHT)) then
		doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You can't this use rune while have PZ status.")
		return true
	end

	if (getPlayerStorageValue(cid, 1234) < os.clock()) then
		setPlayerStorageValue(cid, 1234, (os.clock() + delayInSeconds))
       		doTeleportThing(cid, getPlayerMasterPos(cid))
		doSendMagicEffect(newPos, CONST_ME_TELEPORT)
		doCombat(cid, combat, var)
		return true
	end
	return true
end
 
Back
Top