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

Put 3 scripts in 1

alvo

New Member
Joined
Oct 20, 2009
Messages
45
Reaction score
0
Well , i have 3 scripts made by Cykotitan with ref ML, Melee and distance , like focus cape that ref ml +1 .. so to ref one item i have to add in movements event = script value = ml.lua or melee.lua or dist.lua , so one item can only have one type of skill , if i want to add ml + melee in this item i cant because the value of script is just 1 of this 3.. so how can i put this 3 in one?

Talkactions.xml
Code:
<talkaction log="yes" words="/iml" access="5" event="script" value="refine1.lua"/>
<talkaction log="yes" words="/iskill" access="5" event="script" value="refine2.lua"/>
<talkaction log="yes" words="/idist" access="5" event="script" value="refine3.lua"/>

Refine1.lua

Code:
function onSay(cid, words, param)
	local param = string.explode(param, ",")
	local itemid, count, refML = tonumber(param[1]), tonumber(param[2]), tonumber(param[3])

	if itemid then
		doItemSetAttribute(doPlayerAddItem(cid, itemid, count or 1), "aid", refML and (refML + 100) or 0)
	else
		return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Invalid itemid.')
	end
	return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'O item foi criado com sucesso.')
end

Refine2.lua

Code:
function onSay(cid, words, param)
	local param = string.explode(param, ",")
	local itemid, count, refSKILL = tonumber(param[1]), tonumber(param[2]), tonumber(param[3])

	if itemid then
		doItemSetAttribute(doPlayerAddItem(cid, itemid, count or 1), "aid", refSKILL and (refSKILL + 100) or 0)
	else
		return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Invalid itemid.')
	end
	return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'O item foi criado com sucesso.')
end

Refine3.lua

Code:
function onSay(cid, words, param)
	local param = string.explode(param, ",")
	local itemid, count, refDIST = tonumber(param[1]), tonumber(param[2]), tonumber(param[3])

	if itemid then
		doItemSetAttribute(doPlayerAddItem(cid, itemid, count or 1), "aid", refDIST and (refDIST + 100) or 0)
	else
		return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Invalid itemid.')
	end
	return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'O item foi criado com sucesso.')
end


Movements.xml
Code:
	<movevent type="Equip" itemid="7424" slot="hand" event="script" value="mlvlbonus.lua"/>
	<movevent type="DeEquip" itemid="7424" slot="hand" event="script" value="mlvlbonus.lua"/>
	<movevent type="Equip" itemid="7417" slot="hand" event="script" value="skill.lua"/>
	<movevent type="DeEquip" itemid="7417" slot="hand" event="script" value="skill.lua"/>
	<movevent type="Equip" itemid="7438" slot="hand" event="script" value="dist.lua"/>
	<movevent type="DeEquip" itemid="7438" slot="hand" event="script" value="dist.lua"/>

mlvlbonus.lua

Code:
local maxMLvlBonus, conditions = 250, {}
for i = 1, maxMLvlBonus do
	conditions[i] = createConditionObject(CONDITION_ATTRIBUTES)
	setConditionParam(conditions[i], CONDITION_PARAM_TICKS, -1)
	setConditionParam(conditions[i], CONDITION_PARAM_STAT_MAGICLEVEL, i)
	setConditionParam(conditions[i], CONDITION_PARAM_SUBID, 4)
end

function onEquip(cid, item, slot)
	if item.actionid > 0 and item.actionid <= maxMLvlBonus then
		doAddCondition(cid, conditions[item.actionid - 100])
		doPlayerSendTextMessage(cid, 25, item.actionid-100)
	end
	return true
end
function onDeEquip(cid, item, slot)
	if item.actionid > 0 and item.actionid <= maxMLvlBonus then
		doRemoveCondition(cid, CONDITION_ATTRIBUTES, 4)
	end
	return true
end

skill.lua

Code:
local maxSKILLBonus, conditions = 250, {}
for i = 1, maxSKILLBonus do
	conditions[i] = createConditionObject(CONDITION_ATTRIBUTES)
	setConditionParam(conditions[i], CONDITION_PARAM_TICKS, -1)
	setConditionParam(conditions[i], CONDITION_PARAM_SKILL_MELEE, i)
	setConditionParam(conditions[i], CONDITION_PARAM_SUBID, 4)
end

function onEquip(cid, item, slot)
	if item.actionid > 0 and item.actionid <= maxSKILLBonus then
		doAddCondition(cid, conditions[item.actionid - 100])
		doPlayerSendTextMessage(cid, 25, item.actionid-100)
	end
	return true
end
function onDeEquip(cid, item, slot)
	if item.actionid > 0 and item.actionid <= maxSKILLBonus then
		doRemoveCondition(cid, CONDITION_ATTRIBUTES, 4)
	end
	return true
end

dist.lua

Code:
local maxDISTBonus, conditions = 250, {}
for i = 1, maxDISTBonus do
	conditions[i] = createConditionObject(CONDITION_ATTRIBUTES)
	setConditionParam(conditions[i], CONDITION_PARAM_TICKS, -1)
	setConditionParam(conditions[i], CONDITION_PARAM_SKILL_DISTANCE, i)
	setConditionParam(conditions[i], CONDITION_PARAM_SUBID, 4)
end

function onEquip(cid, item, slot)
	if item.actionid > 0 and item.actionid <= maxDISTBonus then
		doAddCondition(cid, conditions[item.actionid - 100])
		doPlayerSendTextMessage(cid, 25, item.actionid-100)
	end
	return true
end
function onDeEquip(cid, item, slot)
	if item.actionid > 0 and item.actionid <= maxDISTBonus then
		doRemoveCondition(cid, CONDITION_ATTRIBUTES, 4)
	end
	return true
end



So i am just thinking if someone can make something like > /refALL id,count,refml,refmelee,refdist



Ty and cya ;]
 
Code:
<?xml version="1.0" encoding="UTF-8"?>
<mod name="no name" version="1.0" author="OzIcO" contact="in my house" enabled="yes">
	<talkaction words="/iml" access="5" event="buffer"><![CDATA[
		local param = string.explode(param, ",")
		local itemid, count, refML = tonumber(param[1]), tonumber(param[2]), tonumber(param[3])
		if itemid then
			doItemSetAttribute(doPlayerAddItem(cid, itemid, count or 1), "aid", refML and (refML + 100) or 0)
		else
			return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Invalid itemid.')
		end
		return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'O item foi criado com sucesso.')
	]]></talkaction>
	<talkaction words="/iskill" access="5" event="buffer"><![CDATA[
		local param = string.explode(param, ",")
		local itemid, count, refSKILL = tonumber(param[1]), tonumber(param[2]), tonumber(param[3])
		if itemid then
			doItemSetAttribute(doPlayerAddItem(cid, itemid, count or 1), "aid", refSKILL and (refSKILL + 100) or 0)
		else
			return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Invalid itemid.')
		end
		return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'O item foi criado com sucesso.')
	]]></talkaction>
	<talkaction words="/idist" access="5" event="buffer"><![CDATA[
		local param = string.explode(param, ",")
		local itemid, count, refDIST = tonumber(param[1]), tonumber(param[2]), tonumber(param[3])
		if itemid then
			doItemSetAttribute(doPlayerAddItem(cid, itemid, count or 1), "aid", refDIST and (refDIST + 100) or 0)
		else
			return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Invalid itemid.')
		end
		return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'O item foi criado com sucesso.')
	]]></talkaction>
	<movevent type="equip" itemid="7424" slot="hand" event="script"><![CDATA[
	local maxMLvlBonus, conditions = 250, {}
	for i = 1, maxMLvlBonus do
		conditions[i] = createConditionObject(CONDITION_ATTRIBUTES)
		setConditionParam(conditions[i], CONDITION_PARAM_TICKS, -1)
		setConditionParam(conditions[i], CONDITION_PARAM_STAT_MAGICLEVEL, i)
		setConditionParam(conditions[i], CONDITION_PARAM_SUBID, 4)
	end
	function onEquip(cid, item, slot)
		if item.actionid > 0 and item.actionid <= maxMLvlBonus then
			doAddCondition(cid, conditions[item.actionid - 100])
			doPlayerSendTextMessage(cid, 25, item.actionid-100)
		end
		return true
	end
	function onDeEquip(cid, item, slot)
		if item.actionid > 0 and item.actionid <= maxMLvlBonus then
			doRemoveCondition(cid, CONDITION_ATTRIBUTES, 4)
		end
		return true
	end
	]]></movevent>
	<movevent type="equip" itemid="7417" slot="hand" event="script"><![CDATA[
	local maxSKILLBonus, conditions = 250, {}
	for i = 1, maxSKILLBonus do
		conditions[i] = createConditionObject(CONDITION_ATTRIBUTES)
		setConditionParam(conditions[i], CONDITION_PARAM_TICKS, -1)
		setConditionParam(conditions[i], CONDITION_PARAM_SKILL_MELEE, i)
		setConditionParam(conditions[i], CONDITION_PARAM_SUBID, 4)
	end
	function onEquip(cid, item, slot)
		if item.actionid > 0 and item.actionid <= maxSKILLBonus then
			doAddCondition(cid, conditions[item.actionid - 100])
			doPlayerSendTextMessage(cid, 25, item.actionid-100)
		end
		return true
	end
	function onDeEquip(cid, item, slot)
		if item.actionid > 0 and item.actionid <= maxSKILLBonus then
			doRemoveCondition(cid, CONDITION_ATTRIBUTES, 4)
		end
		return true
	end
	]]></movevent>
	<movevent type="equip" itemid="7438" slot="hand" event="script"><![CDATA[
	local maxDISTBonus, conditions = 250, {}
	for i = 1, maxDISTBonus do
		conditions[i] = createConditionObject(CONDITION_ATTRIBUTES)
		setConditionParam(conditions[i], CONDITION_PARAM_TICKS, -1)
		setConditionParam(conditions[i], CONDITION_PARAM_SKILL_DISTANCE, i)
		setConditionParam(conditions[i], CONDITION_PARAM_SUBID, 4)
	end
	function onEquip(cid, item, slot)
		if item.actionid > 0 and item.actionid <= maxDISTBonus then
			doAddCondition(cid, conditions[item.actionid - 100])
			doPlayerSendTextMessage(cid, 25, item.actionid-100)
		end
		return true
	end
	function onDeEquip(cid, item, slot)
		if item.actionid > 0 and item.actionid <= maxDISTBonus then
			doRemoveCondition(cid, CONDITION_ATTRIBUTES, 4)
		end
		return true
	end
	]]></movevent>
</mod>
i copy/pasted ;d good luck
 
ty for the try man , but with your script when i put out my item the skill still there , but you is not very diferent then mine , because both can put just one skill in one item and i'd like to an item give 2 skills liker an sword give 10 of sword fighting anf 5 of magic level , lets suppose that is a runed sword ,it will be like this > /refall 7417,1,10,5,refdist following /refall id,count,refskill,refml,refdist


cya ;]
 
Back
Top