Hello,
I'm searching in the forum, but I not have found a solution.
When I kill the Inquisition Bosses the teleport not appear and not show any errors in console.
Teleports_inquisition.lua
Creaturescripts.lua
Login.lua
Ushuriel.xml
Rep++ for help!
PD: I'm using tfs 0.3.7
I'm searching in the forum, but I not have found a solution.
When I kill the Inquisition Bosses the teleport not appear and not show any errors in console.
Teleports_inquisition.lua
Lua:
local t = {
["ushuriel"] = { -- Monster name here. Must be LOWER case!
toPos = {x = 172, y = 559, z = 13}, -- Where the portal takes the players.
createPos = {x = 246, y = 351, z = 12}, -- Where the portal is created.
timeToRemove = 60, -- Seconds until the portal is removed.
messageOnKill = "You have defeated me... You shall be rewarded for your victory!"
},
["Zugurosh"] = {
toPos = {x = 314, y = 474, z = 13},
createPos = {x = 390, y = 525, z = 13},
timeToRemove = 60,
messageOnKill = "You have taken my life!"
},
["Madareth"] = {
toPos = {x = 287, y = 365, z = 13},
createPos = {x = 340, y = 460, z = 13},
timeToRemove = 60,
messageOnKill = "You have taken my life!"
},
["Golgordan"] = {
toPos = {x = 408, y = 413, z = 13},
createPos = {x = 505, y = 345, z = 13},
timeToRemove = 60,
messageOnKill = "You have taken my life!"
},
["Latrivan"] = {
toPos = {x = 408, y = 413, z = 13},
createPos = {x = 505, y = 345, z = 13},
timeToRemove = 60,
messageOnKill = "You have taken my life!"
},
["Annihilon"] = {
toPos = {x = 294, y = 681, z = 13},
createPos = {x = 637, y = 472, z = 13},
timeToRemove = 60,
messageOnKill = "You have taken my life!"
},
["Hellgorak"] = {
toPos = {x = 255, y = 467, z = 13},
createPos = {x = 335, y = 581, z = 10},
timeToRemove = 60,
messageOnKill = "You have taken my life!"
},
}
local function remove(position)
local k = getTileItemById(position, 1387).uid
return k > 0 and doRemoveItem(k)
end
function onKill(cid, target, damage, flags)
local v = t[string.lower(getCreatureName(target))]
if(v and (damage == true or bit.band(flags, 1) == 1) and isMonster(target)) then
local position = v.createPos
doCreatureSay(cid, v.messageOnKill, TALKTYPE_MONSTER, nil, nil, getCreaturePosition(target))
doSendMagicEffect(v.createPos, CONST_ME_ENERGYAREA)
doCreateTeleport(1387, v.toPos, v.createPos)
addEvent(remove, v.timeToRemove * 1000)
end
return true
end
Creaturescripts.lua
Lua:
<?xml version="1.0" encoding="UTF-8"?>
<creaturescripts>
<event type="channelrequest" name="Ban_Type" event="script" value="ban/type.lua"/>
<event type="channelrequest" name="Ban_Action" event="script" value="ban/action.lua"/>
<event type="textedit" name="Ban_Finish" event="script" value="ban/finish.lua"/>
<!-- [url=http://www.evenhost.net]Weblara | Internet Solutions[/url] -->
<!-- WoE -->
<event type="death" name="empe_broken" event="script" value="empe_broken.lua"/>
<event type="death" name="pre_empes" event="script" value="pre_empes.lua"/>
<event type="statschange" name="empe_dmg" event="script" value="empe_dmg.lua"/>
<event type="login" name="reg_vs_guard" event="script" value="vs_guard.lua"/>
<event type="login" name="FirstItems" event="script" value="firstitems.lua"/>
<event type="statschange" name="vs_guard" event="script" value="vs_guard.lua"/>
<!-- Dota -->
<event type="death" name="ga1" event="script" value="ga1.lua"/>
<event type="death" name="ga2" event="script" value="ga2.lua"/>
<event type="death" name="ga3" event="script" value="ga3.lua"/>
<event type="death" name="gv1" event="script" value="gv1.lua"/>
<event type="death" name="gv2" event="script" value="gv2.lua"/>
<event type="death" name="gv3" event="script" value="gv3.lua"/>
<event type="login" name="PlayerLogin" event="script" value="login.lua"/>
<event type="channeljoin" name="GuildMotd" event="script" value="guild.lua"/>
<event type="mailreceive" name="Mail" event="script" value="mail.lua"/>
<event type="reportbug" name="SaveReportBug" script="reportbug.lua"/>
<event type="advance" name="AdvanceSave" event="script" value="advancesave.lua"/>
<event type="think" name="Idle" event="script" value="idle.lua"/>
<event type="think" name="SkullCheck" event="script" value="skullcheck.lua"/>
<event type="death" name="PythiusDead" script="pythius_the_rotten.lua" />
<event type="death" name="monster2" event="script" value="monster2.lua"/>
<event type="kill" name="Killer" event="script" value="teleports_inquisition.lua"/>
<event type="login" name="Welcome" script="welcome.lua"/>
<event type="login" name="ExpToken" event="script" value="xp.lua"/>
<event type="advance" name="LevelRecompense" event="script" value="recompenselvl.lua"/>
<!-- Custom systems -->
<event type="kill" name="PlayerKill" event="script" value="arenakill.lua"/>
<event type="death" name="PlayerDeath" event="script" value="playerdeath.lua"/>
<event type="logout" name="demonOakLogout" event="script" value="demonOakLogout.lua"/>
<event type="death" name="demonOakDeath" event="script" value="demonOakDeath.lua"/>
<event type="death" name="Azerus" event="script" value="azerus.lua"/>
<event type="kill" name="KillingInTheNameOf" event="script" value="killinginthenameof.lua"/>
</creaturescripts>
Login.lua
Lua:
local config = {
loginMessage = getConfigValue('loginMessage'),
useFragHandler = getBooleanFromString(getConfigValue('useFragHandler'))
}
dofile("./_woe.lua")
function onLogin(cid)
Woe.getInfo()
local Guild_ID = getPlayerGuildId(cid)
local res = db.getResult("SELECT `guild` FROM `woe`;")
if (Guild_ID == res:getDataInt("guild")) then
doPlayerSetExperienceRate(cid, 1.15)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your guild has conquered the Castle, for that reason you have 15% extra experience.")
end
accountManager = "Account Manager"
managerCounter = 0
for i, player in ipairs(getOnlinePlayers()) do
if accountManager:lower() == player:lower() then
managerCounter = managerCounter + 1
end
end
if managerCounter >= 3 then
return false
end
local loss = getConfigValue('deathLostPercent')
if(loss ~= nil) then
doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, loss * 10)
end
local accountManager = getPlayerAccountManager(cid)
if(accountManager == MANAGER_NONE) then
local lastLogin, str = getPlayerLastLoginSaved(cid), config.loginMessage
if(lastLogin > 0) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
str = "Your last visit was on " .. os.date("%a %b %d %X %Y", lastLogin) .. "."
else
str = str .. " Please choose your outfit."
doPlayerSendOutfitWindow(cid)
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
elseif(accountManager == MANAGER_NAMELOCK) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, it appears that your character has been namelocked, what would you like as your new name?")
elseif(accountManager == MANAGER_ACCOUNT) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to manage your account and if you want to start over then type 'cancel'.")
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to create an account or type 'recover' to recover an account.")
end
if(not isPlayerGhost(cid)) then
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT)
end
registerCreatureEvent(cid, "Mail")
registerCreatureEvent(cid, "GuildMotd")
registerCreatureEvent(cid, "Idle")
if(config.useFragHandler) then
registerCreatureEvent(cid, "SkullCheck")
end
registerCreatureEvent(cid, "empe_broken")
registerCreatureEvent(cid, "Killer")
registerCreatureEvent(cid, "ZombieMw")
registerCreatureEvent(cid, "ReportBug")
registerCreatureEvent(cid, "AdvanceSave")
registerCreatureEvent(cid, "attackguild")
registerCreatureEvent(cid, "advance")
registerCreatureEvent(cid, "FimVip")
registerCreatureEvent(cid, "SkullCheck")
registerCreatureEvent(cid, "demonOakLogout")
registerCreatureEvent(cid, "demonOakDeath")
registerCreatureEvent(cid, "ReportBug")
registerCreatureEvent(cid, "VipReceive")
registerCreatureEvent(cid, "zombieevent")
registerCreatureEvent(cid, "FirstItems")
registerCreatureEvent(cid, "Promot")
registerCreatureEvent(cid, "PlayerKill")
registerCreatureEvent(cid, "KillingInTheNameOf")
registerCreatureEvent(cid, "PythiusDead")
registerCreatureEvent(cid, "LevelRecompense")
if (InitArenaScript ~= 0) then
InitArenaScript = 1
for i = 42300, 42309 do
setGlobalStorageValue(i, 0)
setGlobalStorageValue(i+100, 0)
end
end
if getPlayerStorageValue(cid, 42309) < 1 then
for i = 42300, 42309 do
setPlayerStorageValue(cid, i, 0)
end
end
if getPlayerStorageValue(cid, 42319) < 1 then
for i = 42310, 42319 do
setPlayerStorageValue(cid, i, 0)
end
end
if getPlayerStorageValue(cid, 42329) < 1 then
for i = 42320, 42329 do
setPlayerStorageValue(cid, i, 0)
end
end
if getPlayerStorageValue(cid, 42355) == -1 then
setPlayerStorageValue(cid, 42355, 0)
end
setPlayerStorageValue(cid, 42350, 0)
setPlayerStorageValue(cid, 42352, 0)
-- CONFIG
local secondsPerHit = 2 -- THE ATTACKSPEED (1 hit per 2 seconds; default)
local manaGenPerSec = 10 -- MANA USED PER SEC
local offlineModifier = 0.5 -- FROM 0-1 (or higher if you wish). How fast you are skillin on offline training compared to normal (0.5 = 50%)
local maxSecondsTraining = 60 * 60 * 12 -- (Default 12 hours)
--END of config
local accid = getAccountNumberByPlayerName(getCreatureName(cid))
local name = getCreatureName(cid)
local checkTraining = db.storeQuery("SELECT * FROM offline_training WHERE `account_id`=".. accid .." AND `name`='".. name .."';")
local skills = {[8]=MAGIC, [4]=SKILL_DISTANCE,[1]=SKILL_CLUB, [3]=SKILL_AXE,[2]=SKILL_SWORD}
local skillNames = {[8]="Magic Level", [4]="Distance Fighting",[1]="Club Fighting", [3]="AxeFighting",[2]="Sword Fighting"}
if checkTraining then
local skill = result.getDataInt(checkTraining, "type")
local timeTrained = result.getDataInt(checkTraining, "start_training")
local secondsTrained = os.time()-timeTrained
local skillTries = math.floor((secondsTrained/secondsPerHit)*offlineModifier)
local skillBefore
local skillAfter
if timeTrained > maxSecondsTraining then
timeTrained = maxSecondsTraining
end
if skill ~= 8 then
skillBefore = getPlayerSkillLevel(cid, skills[skill])
doPlayerAddSkillTry(cid, skills[skill], skillTries)
skillAfter = getPlayerSkillLevel(cid, skills[skill])
else
skillBefore = getPlayerMagLevel(cid)
doPlayerAddSpentMana(cid, manaGenPerSec*secondsTrained)
skillAfter = getPlayerMagLevel(cid)
end
local skillBeforeShield = getPlayerSkillLevel(cid, 5)
doPlayerAddSkillTry(cid, 5, skillTries)
local skillAfterShield = getPlayerSkillLevel(cid, 5)
doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Your ".. skillNames[skill] .." skill changed from level ".. skillBefore.." to level ".. skillAfter ..".")
doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Your Shielding skill changed from level ".. skillBeforeShield.." to level ".. skillAfterShield ..". ")
db.query("DELETE FROM offline_training WHERE `account_id`=".. accid .." AND `name`='".. name .."';")
end
return true
end
function round(num, idp)
local mult = 10^(idp or 0)
return math.floor(num * mult + 0.5) / mult
end
Ushuriel.xml
Lua:
<?xml version="1.0" encoding="UTF-8"?>
<monster name="Ushuriel" nameDescription="ushuriel" race="fire" experience="10000" speed="350" manacost="0">
<health now="50000" max="50000"/>
<look type="12" head="0" body="95" legs="19" feet="112" corpse="6068"/>
<targetchange interval="5000" chance="8"/>
<strategy attack="100" defense="0"/>
<script>
<event name="Killer"/>
</script>
<flags>
<flag summonable="0"/>
<flag attackable="1"/>
<flag hostile="1"/>
<flag illusionable="0"/>
<flag convinceable="0"/>
<flag pushable="0"/>
<flag canpushitems="1"/>
<flag canpushcreatures="1"/>
<flag targetdistance="1"/>
<flag staticattack="85"/>
<flag runonhealth="0"/>
</flags>
<attacks>
<attack name="melee" interval="2000" skill="140" attack="145"/>
<attack name="physical" interval="1000" chance="10" length="10" spread="0" min="-250" max="-500">
<attribute key="areaEffect" value="mortarea"/>
</attack>
<attack name="death" interval="1000" chance="8" radius="5" target="0" min="-30" max="-760">
<attribute key="areaEffect" value="mortarea"/>
<attribute key="shootEffect" value="death"/>
</attack>
<attack name="earth" interval="2000" chance="9" length="8" spread="0" min="-200" max="-585">
<attribute key="areaEffect" value="smallplants"/>
</attack>
<attack name="ice" interval="1000" chance="8" target="0" radius="6" min="0" max="-430">
<attribute key="areaEffect" value="icetornado"/>
</attack>
<attack name="drunk" interval="3000" chance="11" radius="6" target="0">
<attribute key="areaEffect" value="purplenote"/>
</attack>
<attack name="energycondition" interval="2000" chance="15" radius="4" target="0" min="-250" max="-250">
<attribute key="areaEffect" value="energy"/>
</attack>
</attacks>
<defenses armor="50" defense="45">
<defense name="healing" interval="1000" chance="12" min="400" max="600">
<attribute key="areaEffect" value="greenshimmer"/>
</defense>
<defense name="speed" interval="1000" chance="4" speedchange="400" duration="7000">
<attribute key="areaEffect" value="blueshimmer"/>
</defense>
</defenses>
<immunities>
<immunity lifedrain="1"/>
<immunity paralyze="1"/>
<immunity invisible="1"/>
</immunities>
<loot>
<item id="6300" chance="7777"/><!-- death ring -->
<item id="2195" chance="4444"/><!-- boots of haste -->
<item id="2393" chance="3000"/><!-- giant sword -->
<item id="2432" chance="5555"/><!-- fire axe -->
<item id="2402" chance="10000"/><!-- silver dagger -->
<item id="2477" chance="6666"/><!-- knight legs -->
<item id="2164" chance="7300"/><!-- might ring -->
<item id="2150" countmax="17" chance="6000"/><!-- small amethyst -->
<item id="2462" chance="9700"/><!-- devil helmet -->
<item id="7591" chance="17000"/><!-- great health potion -->
<item id="7591" chance="9000"/><!-- great health potion -->
<item id="2149" countmax="6" chance="4388"/><!-- small emerald -->
<item id="2396" chance="6666"/><!-- ice rapier -->
<item id="2158" chance="4444"/><!-- blue gem -->
<item id="2470" chance="6500"/><!-- golden legs -->
<item id="2520" chance="9999"/><!-- demon shield -->
</loot>
</monster>
Rep++ for help!
PD: I'm using tfs 0.3.7
Last edited: