• 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!
  • New resources must be posted under Resources tab. A discussion thread will be created automatically, you can't open threads manually anymore.

CreatureEvent Get An Item after Reaching Lvl XXX

perfection

FATAL DAMAGE
Joined
Aug 27, 2011
Messages
196
Reaction score
8
Lua:
-- Scripted by Perfection --
local item1 = XXXX -- Id of First Item
local item2 = XXXX -- Id of Second Item
local item3 = XXXX -- Id of Third Item

function onAdvance(cid, skill, oldLevel, newLevel)
	if getPlayerStorageValue(cid, 99963) ~= 1 and getPlayerLevel(cid) >= 600 then
		doPlayerAddItem(cid, item1)
		setPlayerStorageValue(cid, 99963, 1)
		doPlayerSendTextMessage(cid,22,"YOU RECIEVED "..getItemNameById(item1).." FOR REACHING LVL 600")
	return 1
	end
	
	if getPlayerStorageValue(cid, 99962) ~= 2 and getPlayerLevel(cid) >= 800 then
		doPlayerAddItem(cid, item2)
		setPlayerStorageValue(cid, 99962, 2)
		doPlayerSendTextMessage(cid,22,"YOU RECIEVED "..getItemNameById(item2).." FOR REACHING LVL 800")
	return 1
	end
	
	if getPlayerStorageValue(cid, 99961) ~= 3 and getPlayerLevel(cid) >= 1000 then
		doPlayerAddItem(cid, item3)
		setPlayerStorageValue(cid, 99961, 3)
		doPlayerSendTextMessage(cid,22,"YOU RECIEVED "..getItemNameById(item3).." FOR REACHING LVL 1000")
	return 1
	end
return TRUE 
end

in creaturescripts.xml
XML:
<event type="advance" name="Reward" event="script" value="Reward.lua"/>

in login.lua add

Lua:
registerCreatureEvent(cid, "Reward")

i hope u like this better than my noob 5 line scripts :D
 
Last edited:
nice one but not that good for rpg servers, maybe mid-high rated serevers can use that, nj tho!
Glad to see you're improving.
 
I optimized your script and builded it into mod.

Lua:
<?xml version = "1.0" encoding = "UTF-8"?>
	<mod name = "Reward For Level" version = "1.0" author = "Teckman" enabled = "yes">
		<event type = "advance" name = "rewardAdvance" event = "script"><![CDATA[
			local levels = {
				[50] = {2160, 10}, -- [level] = {itemid, count}
				[150] = {2160, 10},
				[250] = {2160, 10},
				[450] = {2160, 10},
				[850] = {2160, 10}
			}
			function onAdvance(cid, skill, oldLevel, newLevel)
				if(skill == SKILL__LEVEL) then
					for k, v in pairs(levels) do
						if(newLevel == k and getPlayerStorageValue(cid, 100) < k) then
							setPlayerStorageValue(cid, 100, k)
							doPlayerAddItem(cid, v[1], v[2])
							doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "You recive " .. v[2] .. "x " .. getItemNameById(v[1]) .. "(s) for reaching " .. k .. " level.")
						end
					end
				end
				return true
			end
		]]></event>
		<event type = "login" name = "rewardLogin" event = "script"><![CDATA[
			function onLogin(cid)
				registerCreatureEvent(cid, "rewardAdvance")
				return true
			end
		]]></event>
	</mod>
 
I optimized your script and builded it into mod.

Lua:
<?xml version = "1.0" encoding = "UTF-8"?>
	<mod name = "Reward For Level" version = "1.0" author = "Teckman" enabled = "yes">
		<event type = "advance" name = "rewardAdvance" event = "script"><=!=[=C=D=A=T=A=[
			local levels = {
				[50] = {2160, 10}, -- [level] = {itemid, count}
				[150] = {2160, 10},
				[250] = {2160, 10},
				[450] = {2160, 10},
				[850] = {2160, 10}
			}
			function onAdvance(cid, skill, oldLevel, newLevel)
				if(skill == SKILL__LEVEL) then
					for k, v in pairs(levels) do
						if(newLevel == k and getPlayerStorageValue(cid, 100) < k) then
							setPlayerStorageValue(cid, 100, k)
							doPlayerAddItem(cid, v[1], v[2])
							doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "You recive " .. v[2] .. "x " .. getItemNameById(v[1]) .. "(s) for reaching " .. k .. " level.")
						end
					end
				end
				return true
			end
		]=]=></event>
		<event type = "login" name = "rewardLogin" event = "script"><=!=[=C=D=A=T=A=[
			function onLogin(cid)
				registerCreatureEvent(cid, "rewardAdvance")
				return true
			end
		]=]=></event>
	</mod>

i hope u optimize all my future threads to mods coz i count those mods as tutorials for me to start modding :D
 
Back
Top