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

onPrepareDeath problem

ruda

Member
Joined
Jul 4, 2008
Messages
164
Reaction score
15
Location
Brazil
Hi. I'm using TFS 0.3 beta 1

reward.lua
Code:
function onPrepareDeath(cid, lastHitKiller, mostDamageKiller)
	if isPlayer(lastHitKiller) == TRUE then
		lvl = getPlayerLevel(cid)
		
		if lvl > 0 and lvl < 100 then
			loot = 5807
		elseif lvl > 99 and lvl < 200 then
			loot = 5806
		elseif lvl > 199 then
			loot = 5805
		else
			loot = 5807
		end
		
		item = doPlayerAddItem(lastHitKiller, loot, 1)
		doSetItemSpecialDescription(item, ""..getCreatureName(cid).." was killed by "..getCreatureName(lastHitKiller).." at Level "..getPlayerLevel(cid)..".")
		doPlayerSendTextMessage(lastHitKiller, 22, "You killed "..getCreatureName(cid)..".")
		doBroadcastMessage(getCreatureName(lastHitKiller).." killed "..getCreatureName(cid), 18)
	end
end

login.lua
Code:
function onLogin(cid)
	registerCreatureEvent(cid, "Killed")
	registerCreatureEvent(cid, "PlayerDeath")
	return TRUE
end

creaturescripts.xml
Code:
<?xml version="1.0" encoding="UTF-8"?>
<creaturescripts>
	<event type="login" name="PlayerLogin" script="login.lua"/>
	<event type="login" name="FirstItems" script="firstitems.lua"/>
	<event type="preparedeath" name="Killed" script="reward.lua"/>
	<event type="death" name="PlayerDeath" script="playerdeath.lua"/>	
</creaturescripts>

The 'killer' should get a globet when kills someone, but nothing happens. Whats wrong?
 
Kramer infernal is right..
Use this

function onDeath(cid, corpse, lastHitKiller, mostDamageKiller)

and in creaturescripts.xml use 'death instead 'preparedeath'

at least you can use
onKill(cid,target)
 
Last edited:
Back
Top