• 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 Addon "Bonus System"

BUG

Mistake in 0.4.
If you pose skull and you bring an outfit with full addons and change to an outfit removing his your full addons you lose skull "PZ"
 
is there a less buggy version of this script with on removing addon it removes the attributed max health/mana because that's just to buggy :eek:
 
is there a less buggy version of this script with on removing addon it removes the attributed max health/mana because that's just to buggy :eek:

Distro version? It was wrote for TFS 0.3.6pl1... Work only for players with acces less than 3 [for non gm/cm/god characters].
Thanks... goodbye...

Propably tomorow I will write condition with max health and mana.
 
Info:
It's bugged, you can get any amount of health/mana cuz of the bonuses...

BUG

Mistake in 0.4.
If you pose skull and you bring an outfit with full addons and change to an outfit removing his your full addons you lose skull "PZ"

Fixed (in 0.3.6 I don't have this bugs)

1. It work only for players with acces/group less than 3
2. It was tested on TFS 0.3.6pl1 and won't work in any TFS 0.2.x and older 0.3.x than 0.3.6
3. Possible conflicts with buff scripts/spells and items that add skills/hp/mana etc.

XML
PHP:
	<event type="outfit" name="Addons" event="script" value="addons.lua"/>
	<event type="login" name="AddonLogin" event="script" value="addons.lua"/>

LUA
Lua:
local hunter = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(hunter, CONDITION_PARAM_TICKS, -1)
setConditionParam(hunter, CONDITION_PARAM_SKILL_DISTANCE, 3)

local knight = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(knight, CONDITION_PARAM_TICKS, -1)
setConditionParam(knight, CONDITION_PARAM_SKILL_SWORD, 3)

local mage = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(mage, CONDITION_PARAM_TICKS, -1)
setConditionParam(mage, CONDITION_PARAM_STAT_MAGICLEVEL, 2)

local barbarian = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(barbarian, CONDITION_PARAM_TICKS, -1)
setConditionParam(barbarian, CONDITION_PARAM_SKILL_AXE, 3)

local norse = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(norse, CONDITION_PARAM_TICKS, -1)
setConditionParam(norse, CONDITION_PARAM_SKILL_SHIELD, 2)
setConditionParam(norse, CONDITION_PARAM_STAT_MAXHEALTH, 200) --- hp

local nightmare = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(nightmare, CONDITION_PARAM_TICKS, -1)
setConditionParam(nightmare, CONDITION_PARAM_SKILL_SHIELD, 3)
setConditionParam(nightmare, CONDITION_PARAM_STAT_MAXHEALTH, 100) --- hp

local yalaharian = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(yalaharian, CONDITION_PARAM_TICKS, -1)
setConditionParam(yalaharian, CONDITION_PARAM_STAT_MAGICLEVEL, 2)
setConditionParam(yalaharian, CONDITION_PARAM_STAT_MAXHEALTH, 200) --- hp
setConditionParam(yalaharian, CONDITION_PARAM_STAT_MAXMANA, 200) --- mana

local demonhunter = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(demonhunter, CONDITION_PARAM_TICKS, -1)
setConditionParam(demonhunter, CONDITION_PARAM_STAT_MAXHEALTH, 500) --- hp
setConditionParam(demonhunter, CONDITION_PARAM_STAT_MAXMANA, 500) -- mana

local brotherhood = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(brotherhood, CONDITION_PARAM_TICKS, -1)
setConditionParam(brotherhood, CONDITION_PARAM_STAT_MAXHEALTH, 200) --- hp

local hpmana100 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(hpmana100, CONDITION_PARAM_TICKS, -1)
setConditionParam(hpmana100, CONDITION_PARAM_STAT_MAXHEALTH, 100) --- hp
setConditionParam(hpmana100, CONDITION_PARAM_STAT_MAXMANA, 100) --- mana

local hpmana200 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(hpmana200, CONDITION_PARAM_TICKS, -1)
setConditionParam(hpmana200, CONDITION_PARAM_STAT_MAXHEALTH, 200) --- hp
setConditionParam(hpmana200, CONDITION_PARAM_STAT_MAXMANA, 200) --- mana

local mana100 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(mana100, CONDITION_PARAM_TICKS, -1)
setConditionParam(mana100, CONDITION_PARAM_STAT_MAXMANA, 100) --- mana

local mana200 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(mana200, CONDITION_PARAM_TICKS, -1)
setConditionParam(mana200, CONDITION_PARAM_STAT_MAXMANA, 200) --- mana

local hp100 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(hp100, CONDITION_PARAM_TICKS, -1)
setConditionParam(hp100, CONDITION_PARAM_STAT_MAXHEALTH, 100) --- hp

local speed1 = createConditionObject(CONDITION_HASTE)
setConditionParam(speed1, CONDITION_PARAM_TICKS, -1)
setConditionParam(speed1, CONDITION_PARAM_SPEED, 10)

local speed2 = createConditionObject(CONDITION_HASTE)
setConditionParam(speed2, CONDITION_PARAM_TICKS, -1)
setConditionParam(speed2, CONDITION_PARAM_SPEED, 20)

--- CONDITION_PARAM_STAT_MAXHEALTH, CONDITION_PARAM_STAT_MAXMANA
--- CONDITION_PARAM_BUFF
outfitBonusTable = { --- [] = {condition = , typ = }
	[128] = {condition = {speed1, hp100}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, [136] = {condition = {speed1, hp100}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, --Citizen --[maxHealth = 100]
	[129] = {condition = hunter}, [137] = {condition = hunter}, --Hunter
	[130] = {condition = mana200, typ = CONDITION_ATTRIBUTES}, [138] = {condition = mana200, typ = CONDITION_ATTRIBUTES}, --Mage
	[131] = {condition = knight, typ = CONDITION_ATTRIBUTES}, [139] = {condition = knight, typ = CONDITION_ATTRIBUTES}, --Knight
	[133] = {condition = mana100, typ = CONDITION_ATTRIBUTES}, [141] = {condition = mana100, typ = CONDITION_ATTRIBUTES}, --Summoner -- [maxMana = 100]
	[134] = {condition = knight, typ = CONDITION_ATTRIBUTES}, [142] = {condition = knight, typ = CONDITION_ATTRIBUTES}, --Warrior
	[143] = {condition = barbarian, typ = CONDITION_ATTRIBUTES}, [147] = {condition = barbarian, typ = CONDITION_ATTRIBUTES}, --Barbarian
	[144] = {condition = mage, typ = CONDITION_ATTRIBUTES}, [148] = {condition = mage, typ = CONDITION_ATTRIBUTES}, --Druid
	[145] = {condition = {hpmana100}, typ = CONDITION_ATTRIBUTES}, [149] = {condition = {hpmana100}, typ = CONDITION_ATTRIBUTES}, --Wizard --[maxHealth = 100, maxMana = 100]
	[146] = {condition = {speed1, hpmana200}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, [150] = {condition = {speed1, hpmana200}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, --Oriental --[maxHealth = 200, maxMana = 200]
	[152] = {condition = speed2, typ = CONDITION_HASTE}, [156] = {condition = speed2, typ = CONDITION_HASTE}, --Assassin
	[154] = {condition = mage, typ = CONDITION_ATTRIBUTES}, [158] = {condition = mage, typ = CONDITION_ATTRIBUTES}, --Shaman
	[251] = {condition = norse, typ = CONDITION_ATTRIBUTES}, [252] = {condition = norse, typ = CONDITION_ATTRIBUTES}, --Norse [maxHealth = 200]
	[268] = {condition = nightmare, typ = CONDITION_ATTRIBUTES}, [269] = {condition = nightmare, typ = CONDITION_ATTRIBUTES}, --Nightmare --[maxHealth = 100]
	[270] = {condition = {speed1, hpmana100}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, [273] = {condition = {speed1, hpmana100}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, --Jester --[maxHealth = 100, maxMana = 100]
	[278] = {condition = brotherhood, typ = CONDITION_ATTRIBUTES}, [279] = {condition = brotherhood, typ = CONDITION_ATTRIBUTES}, --Brotherhood -- [maxHealth = 200]
	[288] = {condition = speed2, typ = CONDITION_HASTE}, [289] = {condition = speed2, typ = CONDITION_HASTE}, --Demonhunter --[maxHealth = 500, maxMana = 500]
	[324] = {condition = yalaharian, typ = CONDITION_ATTRIBUTES}, [325] = {condition = yalaharian, typ = CONDITION_ATTRIBUTES} --Yalaharian -- [maxHealth = 200, maxMana = 200]
}

function onLogin(cid)
	registerCreatureEvent(cid, "Addons")
	--- local current = getCreatureOutfit(cid)
	return onOutfit(cid, {lookAddons = 1}, getCreatureOutfit(cid)) and true
end

function onOutfit(cid, old, current)
	if getPlayerAccess(cid) >= 3 then
		return print("Staff/support can't get any addon bonus!") and true
	end
	if old.lookAddons == 3 and outfitBonusTable[old.lookType] then --Bonus off
		if (outfitBonusTable[old.lookType]).typ ~= nil then
			if type((outfitBonusTable[old.lookType]).typ) == "table" then
				for _, value in pairs((outfitBonusTable[old.lookType]).typ) do
					doRemoveCondition(cid, value)
				end
			else
				doRemoveCondition(cid, (outfitBonusTable[old.lookType]).typ)
			end
		end
	end
	if current.lookAddons == 3 and outfitBonusTable[current.lookType] then --Bonus on
		if (outfitBonusTable[current.lookType]).condition ~= nil then
			if type((outfitBonusTable[current.lookType]).condition) == "table" then
				for _, value in pairs((outfitBonusTable[current.lookType]).condition) do
					doAddCondition(cid, value)
				end
			else
				doAddCondition(cid, (outfitBonusTable[current.lookType]).condition)
			end
		end
	end
	return true
end

PS: Sorry for that delay, but i had a lot of work in school xS
 
Last edited:
Hellboy, I don't know if you can help me but ....
Whenever I go to run it on my server, it displays the following error:

Code:
[Error - LuaScriptInterface::loadFile] data/creaturescripts/scripts/addons.lua:1
49: '}' expected (to close '{' at line 147) near '['
[Warning - Event::loadScript] Cannot load script (data/creaturescripts/scripts/a
ddons.lua)
data/creaturescripts/scripts/addons.lua:149: '}' expected (to close '{' at line
147) near '['
[Error - LuaScriptInterface::loadFile] data/creaturescripts/scripts/addons.lua:1
49: '}' expected (to close '{' at line 147) near '['
[Warning - Event::loadScript] Cannot load script (data/creaturescripts/scripts/a
ddons.lua)
data/creaturescripts/scripts/addons.lua:149: '}' expected (to close '{' at line
147) near '['

I made a small change in your script, adding a few functions:
Then I separated the line 147 and line 149 for you:


147
Lua:
outfitBonusTable = { --- [] = {condition = , typ = }

149
Lua:
        [129] = {condition = {speed2, hunter}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}} [137] = {condition = {speed2, hunter}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, --Hunter

Lua:
local hunter =  createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(hunter, CONDITION_PARAM_TICKS, -1)
setConditionParam(hunter, CONDITION_PARAM_SKILL_DISTANCE, 3)

local assassin =  createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(assassin, CONDITION_PARAM_TICKS, -1)
setConditionParam(assassin, CONDITION_PARAM_SKILL_DISTANCE, 5)
setConditionParam(speed3, CONDITION_PARAM_SPEED, 25)

local knight = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(knight, CONDITION_PARAM_TICKS, -1)
setConditionParam(knight, CONDITION_PARAM_SKILL_CLUB, 3)
setConditionParam(knight, CONDITION_PARAM_SKILL_SWORD, 3)
setConditionParam(knight, CONDITION_PARAM_SKILL_AXE, 3)

local warrior = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(warrior, CONDITION_PARAM_TICKS, -1)
setConditionParam(warrior, CONDITION_PARAM_SKILL_SWORD, 5)
setConditionParam(warrior, CONDITION_PARAM_STAT_MAXHEALTH, 100)

local brotherhood = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(brotherhood, CONDITION_PARAM_TICKS, -1)
setConditionParam(brotherhood, CONDITION_PARAM_SKILL_SWORD, -5)
setConditionParam(brotherhood, CONDITION_PARAM_SKILL_SHIELD, -5)
setConditionParam(brotherhood, CONDITION_PARAM_SKILL_AXE, 5)

local club = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(club, CONDITION_PARAM_TICKS, -1)
setConditionParam(club, CONDITION_PARAM_SKILL_CLUB, 5)

local mage = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(mage, CONDITION_PARAM_TICKS, -1)
setConditionParam(mage, CONDITION_PARAM_STAT_MAGICLEVEL, 2)
setConditionParam(yalaharian, CONDITION_PARAM_STAT_MAXMANA, 300) --- mana

local mage1 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(mage1, CONDITION_PARAM_TICKS, -1)
setConditionParam(mage1, CONDITION_PARAM_STAT_MAGICLEVEL, 3)
setConditionParam(yalaharian, CONDITION_PARAM_STAT_MAXMANA, 100) --- mana

local barbarian = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(barbarian, CONDITION_PARAM_TICKS, -1)
setConditionParam(barbarian, CONDITION_PARAM_SKILL_AXE, 3)

local norse = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(norse, CONDITION_PARAM_TICKS, -1)
setConditionParam(norse, CONDITION_PARAM_SKILL_SHIELD, 3)
setConditionParam(norse, CONDITION_PARAM_STAT_MAGICLEVEL, 1)
setConditionParam(norse, CONDITION_PARAM_STAT_MAXHEALTH, 100) --- hp

local nightmare = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(nightmare, CONDITION_PARAM_TICKS, -1)
setConditionParam(nightmare, CONDITION_PARAM_SKILL_SHIELD, 5)
setConditionParam(nightmare, CONDITION_PARAM_STAT_MAXHEALTH, 200) --- hp

local jester = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(jester, CONDITION_PARAM_TICKS, -1)
setConditionParam(jester, CONDITION_PARAM_SKILL_SHIELD, 4)
setConditionParam(jester, CONDITION_PARAM_SKILL_CLUB, 5)
setConditionParam(jester, CONDITION_PARAM_STAT_MAXHEALTH, 100) --- hp
setConditionParam(jester, CONDITION_PARAM_STAT_MAXMANA, 100) --- mana

local yalaharian = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(yalaharian, CONDITION_PARAM_TICKS, -1)
setConditionParam(yalaharian, CONDITION_PARAM_STAT_MAGICLEVEL, 2)
setConditionParam(yalaharian, CONDITION_PARAM_STAT_MAXHEALTH, 100) --- hp
setConditionParam(yalaharian, CONDITION_PARAM_STAT_MAXMANA, 200) --- mana

local demonhunter = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(demonhunter, CONDITION_PARAM_TICKS, -1)
setConditionParam(demonhunter, CONDITION_PARAM_STAT_MAXHEALTH, 300) --- hp
setConditionParam(demonhunter, CONDITION_PARAM_SPEED, 20)

local brotherhood = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(brotherhood, CONDITION_PARAM_TICKS, -1)
setConditionParam(brotherhood, CONDITION_PARAM_SKILL_SWORD, -5)
setConditionParam(brotherhood, CONDITION_PARAM_SKILL_SHIELD, -5)
setConditionParam(brotherhood, CONDITION_PARAM_SKILL_AXE, 5) --- hp

local warmaster = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(warmaster, CONDITION_PARAM_TICKS, -1)
setConditionParam(warmaster, CONDITION_PARAM_SKILL_SWORD, 10)
setConditionParam(warmaster, CONDITION_PARAM_SKILL_AXE, 10)
setConditionParam(warmaster, CONDITION_PARAM_SKILL_AXE, 10)
setConditionParam(warmaster, CONDITION_PARAM_SKILL_SHIELD, 10)
setConditionParam(warmaster, CONDITION_PARAM_STAT_MAGICLEVEL, 5)
setConditionParam(warmaster, CONDITION_PARAM_SKILL_DISTANCE, 10)
setConditionParam(warmaster, CONDITION_PARAM_SPEED, 25)

local hpmana100 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(hpmana100, CONDITION_PARAM_TICKS, -1)
setConditionParam(hpmana100, CONDITION_PARAM_STAT_MAXHEALTH, 100) --- hp
setConditionParam(hpmana100, CONDITION_PARAM_STAT_MAXMANA, 100) --- mana

local hpmana150 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(hpmana150, CONDITION_PARAM_TICKS, -1)
setConditionParam(hpmana150, CONDITION_PARAM_STAT_MAXHEALTH, 150) --- hp
setConditionParam(hpmana150, CONDITION_PARAM_STAT_MAXMANA, 150) --- mana

local hpmana200 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(hpmana200, CONDITION_PARAM_TICKS, -1)
setConditionParam(hpmana200, CONDITION_PARAM_STAT_MAXHEALTH, 200) --- hp
setConditionParam(hpmana200, CONDITION_PARAM_STAT_MAXMANA, 200) --- mana

local mana100 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(mana100, CONDITION_PARAM_TICKS, -1)
setConditionParam(mana100, CONDITION_PARAM_STAT_MAXMANA, 100) --- mana

local mana150 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(mana150, CONDITION_PARAM_TICKS, -1)
setConditionParam(mana150, CONDITION_PARAM_STAT_MAXMANA, 150) --- mana

local mana200 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(mana200, CONDITION_PARAM_TICKS, -1)
setConditionParam(mana200, CONDITION_PARAM_STAT_MAXMANA, 200) --- mana

local mana300 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(mana300, CONDITION_PARAM_TICKS, -1)
setConditionParam(mana300, CONDITION_PARAM_STAT_MAXMANA, 300) --- mana

local hp100 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(hp100, CONDITION_PARAM_TICKS, -1)
setConditionParam(hp100, CONDITION_PARAM_STAT_MAXHEALTH, 100) --- hp

local hp150 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(hp150, CONDITION_PARAM_TICKS, -1)
setConditionParam(hp150, CONDITION_PARAM_STAT_MAXHEALTH, 150) --- hp

local hp200 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(hp200, CONDITION_PARAM_TICKS, -1)
setConditionParam(hp200, CONDITION_PARAM_STAT_MAXHEALTH, 200) --- hp

local speed1 = createConditionObject(CONDITION_HASTE)
setConditionParam(speed1, CONDITION_PARAM_TICKS, -1)
setConditionParam(speed1, CONDITION_PARAM_SPEED, 10)

local speed2 = createConditionObject(CONDITION_HASTE)
setConditionParam(speed2, CONDITION_PARAM_TICKS, -1)
setConditionParam(speed2, CONDITION_PARAM_SPEED, 15)

local speed3 = createConditionObject(CONDITION_HASTE)
setConditionParam(speed3, CONDITION_PARAM_TICKS, -1)
setConditionParam(speed3, CONDITION_PARAM_SPEED, 25)

--- CONDITION_PARAM_STAT_MAXHEALTH, CONDITION_PARAM_STAT_MAXMANA
--- CONDITION_PARAM_BUFF
[B]outfitBonusTable = { --- [] = {condition = , typ = }[/B]
        [128] = {condition = {speed1, hp100}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, [136] = {condition = {speed1, hp100}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, --Citizen --[maxHealth = 100]
[B]        [129] = {condition = {speed2, hunter}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}} [137] = {condition = {speed2, hunter}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, --Hunter[/B]
        [130] = {condition = mage, typ = CONDITION_ATTRIBUTES}, [138] = {condition = mage, typ = CONDITION_ATTRIBUTES}, --Mage
        [131] = {condition = knight, typ = CONDITION_ATTRIBUTES}, [139] = {condition = knight, typ = CONDITION_ATTRIBUTES}, --Knight
		[140] = {condition = club, typ = CONDITION_ATTRIBUTES}, [132] = {condition = club, typ = CONDITION_ATTRIBUTES}, --Noble
        [133] = {condition = mana150, typ = CONDITION_ATTRIBUTES}, [141] = {condition = mana150, typ = CONDITION_ATTRIBUTES}, --Summoner -- [maxMana = 100]
        [134] = {condition = warrior, typ = CONDITION_ATTRIBUTES}, [142] = {condition = warrior, typ = CONDITION_ATTRIBUTES}, --Warrior
        [143] = {condition = barbarian, typ = CONDITION_ATTRIBUTES}, [147] = {condition = barbarian, typ = CONDITION_ATTRIBUTES}, --Barbarian
        [144] = {condition = mage, typ = CONDITION_ATTRIBUTES}, [148] = {condition = mage, typ = CONDITION_ATTRIBUTES}, --Druid
        [145] = {condition = {hpmana150}, typ = CONDITION_ATTRIBUTES}, [149] = {condition = {hpmana150}, typ = CONDITION_ATTRIBUTES}, --Wizard --[maxHealth = 150, maxMana = 150]
        [146] = {condition = {speed2, hp150}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, [150] = {condition = {speed2, hp150}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, --Oriental --[maxHealth = 200, maxMana = 200]
		[155] = {condition = {speed1, hp150}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, [151] = {condition = {speed1, hp150}, typ = {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, --Pirate
        [152] = {condition = assassin, typ = CONDITION_HASTE}, [156] = {condition = assassin, typ = CONDITION_HASTE}, --Assassin
		[157] = {condition = mage, typ = CONDITION_ATTRIBUTES}, [153] = {condition = mage, typ = CONDITION_ATTRIBUTES}, --Beggar
        [154] = {condition = mage1, typ = CONDITION_ATTRIBUTES}, [158] = {condition = mage1, typ = CONDITION_ATTRIBUTES}, --Shaman
        [251] = {condition = norse, typ = CONDITION_ATTRIBUTES}, [252] = {condition = norse, typ = CONDITION_ATTRIBUTES}, --Norse [maxHealth = 200]
        [268] = {condition = nightmare, typ = CONDITION_ATTRIBUTES}, [269] = {condition = nightmare, typ = CONDITION_ATTRIBUTES}, --Nightmare --[maxHealth = 100]
        [270] = {condition = jester, typ = CONDITION_ATTRIBUTES}, [273] = {condition = jester, typ = CONDITION_ATTRIBUTES}, --Jester --[maxHealth = 100, maxMana = 100]
        [278] = {condition = brotherhood, typ = CONDITION_ATTRIBUTES}, [279] = {condition = brotherhood, typ = CONDITION_ATTRIBUTES}, --Brotherhood -- [maxHealth = 200]
        [288] = {condition = demonhunter, typ = CONDITION_ATTRIBUTES}, [289] = {condition = demonhunter, typ = CONDITION_ATTRIBUTES}, --Demonhunter --[maxHealth = 500, maxMana = 500]
        [324] = {condition = yalaharian, typ = CONDITION_ATTRIBUTES}, [325] = {condition = yalaharian, typ = CONDITION_ATTRIBUTES} --Yalaharian -- [maxHealth = 200, maxMana = 200]
		[336] = {condition = warmaster, typ = CONDITION_ATTRIBUTES}, [335] = {condition = warmaster, typ = CONDITION_ATTRIBUTES} --Warmaster
}

function onLogin(cid)
        registerCreatureEvent(cid, "Addons")
        --- local current = getCreatureOutfit(cid)
        return onOutfit(cid, {lookAddons = 1}, getCreatureOutfit(cid)) and true
end

function onOutfit(cid, old, current)
        if getPlayerAccess(cid) >= 3 then
                return print("Staff/support can't get any addon bonus!") and true
        end
        if old.lookAddons == 3 and outfitBonusTable[old.lookType] then --Bonus off
                if (outfitBonusTable[old.lookType]).typ ~= nil then
                        if type((outfitBonusTable[old.lookType]).typ) == "table" then
                                for _, value in pairs((outfitBonusTable[old.lookType]).typ) do
                                        doRemoveCondition(cid, value)
                                end
                        else
                                doRemoveCondition(cid, (outfitBonusTable[old.lookType]).typ)
                        end
                end
        end
        if current.lookAddons == 3 and outfitBonusTable[current.lookType] then --Bonus on
                if (outfitBonusTable[current.lookType]).condition ~= nil then
                        if type((outfitBonusTable[current.lookType]).condition) == "table" then
                                for _, value in pairs((outfitBonusTable[current.lookType]).condition) do
                                        doAddCondition(cid, value)
                                end
                        else
                                doAddCondition(cid, (outfitBonusTable[current.lookType]).condition)
                        end
                end
        end
        return true
end

Thank you for your attention. ^^
 
#Taturana182#
You just not copied all lines, try one more time coppy lua file :)

#EDIT#
After this:
Lua:
[325] = {condition = yalaharian, typ = CONDITION_ATTRIBUTES}
and before this:
Lua:
--Yalaharian -- [maxHealth = 200, maxMana = 200]
add this:
Code:
,

Next replace this:
Lua:
       [129] = {condition = {speed2, hunter}, typ =  {CONDITION_HASTE, CONDITION_ATTRIBUTES}} [137] = {condition = {speed2, hunter}, typ =  {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, --Hunter

for:
Lua:
       [129] = {condition = {speed2, hunter}, typ =  {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, [137] = {condition = {speed2, hunter}, typ =  {CONDITION_HASTE, CONDITION_ATTRIBUTES}}, --Hunter

Have fun, and write here if it will work.

#EDIT2#
Remember about this "," when you change something in table ^^
 
Last edited:
hellboy

Ye :p

The problem really was "," ^^
Thank you for your attention hellboy.
Rep+ for you. ^^
 
@Thread, Hellboy:
Lol, what an idiots ;|
(No offence.)

Example through outfits.xml:
Code:
<outfit id="3">
	<list gender="0" lookType="138" name="Mage">
		<stats magLevel="2"/>
	</list>
	<list gender="1" lookType="130" name="Mage">
		<stats magLevel="2"/>
	</list>
</outfit>

That means if someone is wearing full mage he'll receive magic level +2.

Wich version?
 
Back
Top