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

Lua Talkaction spell, not getting experience from monsters

rockseller

Lua & .NET Programmer
Joined
May 10, 2008
Messages
159
Reaction score
9
Location
México
I'm using spells as talkactions, i have the following talkaction:

Code:
function onSay(cid, words, param, channel)
	playerVocation = getPlayerVocation(cid)
	RequiredVocation = 2
	TargetCid = getCreatureTarget(cid)
	if playerVocation ~= RequiredVocation then
		doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Wrong Vocation")
	return true
	end

	if TargetCid == 0 then
		doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Attack someone")
	return true
	end
	
	HealthToRemove = 500
	
	--Remove Health
	doCreatureAddHealth(TargetCid, -HealthToRemove)
	return true
end

This can actually kill player and monsters, if is a player, will get a Frag, but if it is a monster, it won't get experience.

Any ideas? Maybe using return doCombat with no parameters?

Thanks in advance.
 
Go to "OT/data/spells"
open the spells.xml
Add this and edit
PHP:
	<instant name="Spell name" words="Words to use" lvl="Required level" mana="Used mana" aggressive="1" selftarget="0" exhaustion="1000" needlearn="0" script="spellname.lua">
		<vocation name="Druid"/>
		<vocation name="Elder Druid"/>
	</instant>
Go to "OT/data/spells/scripts"
Create spellname.lua
PHP:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE,COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT,CONST_ME_DRAWBLOOD)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1.0, -Min Damage, 1.6, -Max damage)

local area = createCombatArea(AREA_CROSS5X5)
setCombatArea(combat, area)

function onCastSpell(cid, var)
    return doCombat(cid, combat, var)
end
And edit min and max damage
 
If u wanna create a rune:
Go to "OT/data/spells"
open the spells.xml
Add and edit:
PHP:
	<rune name="Rune name" id="ITEM ID" allowfaruse="1" charges="Number of charges" lvl="Req. level" maglv="Req. magic level" exhaustion="2000" blocktype="solid" script="runename.lua"/>
Go to "OT/data/spells/scripts"
Create runename.lua
PHP:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_GREEN_RINGS)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_POISON)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1.3, -Min damage, -1.6, -Max damage)

function onCastSpell(cid, var)
	return doCombat(cid, combat, var)
end
Edit this.

if u need help in anything , ask me.
 
Back
Top