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

CreatureEvent MOD working on TFS 0.3.5pl1 Inquisition Quest with creating teleport

Plz czest skript?
Code:
function onUse(cid, item, fromPosition, itemEx, toPosition)
	local storage = 50301
	local inquisitionRewards = {
		[14000] = 8890, --a robe of the underworld
		[14001] = 8918, --a spellbook of dark mysteries
		[14002] = 8881, --a fireborn giant armor
		[14003] = 8888, --a master archer's armor
		[14004] = 8851, --a royal crossbow
		[14005] = 7435, --an executioner
		[14006] = 8929, --the stomper
		[14007] = 7417, --a runed sword
		[14008] = 8854, --a warsinger bow
		[14009] = 8903, --a spellbook of lost souls
		[14010] = 2508, --a mystical armor
		[14011] = 8905 --a rainbow shield
	}
	
	if inquisitionRewards[item.uid] then
		if getPlayerStorageValue(cid, storage) < 1 then
			doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have found " .. getItemArticleById(inquisitionRewards[item.uid]) .. " " .. getItemNameById(inquisitionRewards[item.uid]) .. ".")
			doPlayerAddItem(cid, inquisitionRewards[item.uid], 1)
			setPlayerStorageValue(cid, storage, 1)
		else
			doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is empty.") 
		end
	end
	
	return true
end

Nod tezded.

not real rewards :p
 
Yes but you must modify reward or add a NPC to done demon OAK. If I find some time I will post it here.
 
mod for TFS 0.4

Hello as request it is MOD for 0.4
PHP:
<?xml version="1.0" encoding="UTF-8"?>
<mod name="Inquisition"

version="2.0" author="Tommy" contact="[email protected]" enabled="yes">
<config name="inqusitionFunctions"><![CDATA[
config = {
    message = "Go into the teleporter in 3 minutes, else it will disappear.",
    timeToRemove = 180, -- seconds
    teleportId = 1387,
    MonStor = 48000,
    bosses = { -- Monster Name, Teleport To Position, Teleport Position, UID
        ["Ushuriel"] = { ptp={ x=3068, y=1784, z=13}, pp={ x=3175, y=1728, z=11, stackpos=1 }, uid=49100 },
        ["Annihilon"] = { ptp={ x=1244, y=1297, z=12 }, pp={ x=1187, y=1198, z=12, stackpos=1 }, uid=49200 },
        ["Hellgorak"] = { ptp={ x=1067, y=1307, z=13 }, pp={ x=1192, y=1240, z=12, stackpos=1 }, uid=49300 },
        ["Madareth"] = { ptp={ x=1045, y=1130, z=13}, pp={ x=1111, y=1240, z=12, stackpos=1 }, uid=49400 },
        ["Zugurosh"] = { ptp={ x=1126, y=1151, z=12 }, pp={ x=1149, y=1213, z=12, stackpos=1 }, uid=49500 },
        ["Latrivan"] = { ptp={ x=1153, y=1196, z=13}, pp={ x=1147, y=1244, z=12, stackpos=1 }, uid=49600 }
    }
}

    function removal(position)
    if getThingfromPos(position).itemid == config.teleportId then
        doRemoveItem(getThingfromPos(position).uid)
    end
    return TRUE
end]]></config>

        <event type="login" name="inquisitionRegister" event="script"><![CDATA[
        domodlib('inqusitionFunctions')
        function onLogin(cid)
    registerCreatureEvent(cid, "Inquisition")
        return true
end]]></event>

    <event type="kill" name="Inquisition" event="script"><![CDATA[
function onKill(cid, target, lastHit)
    if(config.bosses[getCreatureName(target)]) then
		local t = config.bosses[getCreatureName(target)]
	    local teleport = doCreateTeleport(config.teleportId, t.ptp, t.pp)
		local position = t.pp
		doItemSetAttribute(teleport, "uid", t.uid)
        doCreatureSay(cid, config.message, TALKTYPE_ORANGE_1)
		addEvent(removal, config.timeToRemove * 1000, position)
	end
	return TRUE
end]]></event>


         <action fromuid="1301" touid="1311" event="script"><![CDATA[
        domodlib('inqusitionFunctions')
	local storage = 50301
	local inquisitionRewards = {
		[1300] = 8890, --a robe of the underworld
		[1301] = 8918, --a spellbook of dark mysteries
		[1302] = 8881, --a fireborn giant armor
		[1303] = 8888, --a master archer's armor
		[1304] = 8851, --a royal crossbow
		[1305] = 7435, --an executioner
		[1306] = 8929, --the stomper
		[1307] = 7417, --a runed sword
		[1308] = 8854, --a warsinger bow
		[1309] = 8903, --a spellbook of lost souls
		[1310] = 2508, --a mystical armor
		[1311] = 8905 --a rainbow shield
	}
	
	if inquisitionRewards[item.uid] then
		if getPlayerStorageValue(cid, storage) < 1 then
			doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have found " .. getItemArticleById(inquisitionRewards[item.uid]) .. " " .. getItemNameById(inquisitionRewards[item.uid]) .. ".")
			doPlayerAddItem(cid, inquisitionRewards[item.uid], 1)
			setPlayerStorageValue(cid, storage, 1)
                                addPlayerRep(cid, 5, TEXTCOLOR_LIGHTBLUE)
		else
			doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is empty.") 
		end
	end
	
	return true
]]></action>
</mod>

but not tested boys...
 
Last edited:
Hey man could you add something?

When the monster die, it appears a teleport, if you get in the teleport it should add you a unique storage per teleport.

Then at the teleports of the entrance, there creating a script that checks the player unique storage, if he have, he gets teleported to the room that teleports that monsters, if he doesnt, it move him back...

Sry for my bad english...
 
what is wrong? -
Code:
[Error - CreatureScript Interface] 
function onKill(cid, target, lastHit)
    if(config.bosses[getCreatureName(target)]) then
        local t = config.bosses[getCreatureName(target)]
        local teleport = doCreateTeleport(config.teleportId, t.ptp, t.pp)
        local position = t.pp
        doItemSetAttribute(teleport, "uid", t.uid)
        doCreatureSay(cid, config.message, TALKTYPE_ORANGE_1)
        addEvent(removal, config.timeToRemove * 1000, position)
    end
    return true
end:onKill
Description: 
[string "LuaInterface::loadBuffer"]:2: attempt to index field 'bosses' (a nil value)
stack traceback:
    [string "LuaInterface::loadBuffer"]:2: in function <[string "LuaInterface::loadBuffer"]:1>
tfs 0.4
 
Last edited:
Back
Top