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

Action Cut spider's web and destroy items with all weapons

Shadow Dan

Sh4dowDan
Joined
Jun 5, 2010
Messages
344
Reaction score
88
Location
Poland
Tested on TFS 0.4
Didn't found any updated theard with this so, here you are.

Scripts not mine, my work is all weapon ids and weaponDestroy.lua

This scripts allow you to cut spider's web and destroy furniture like box etc. chance 25%.

data/actions/scripts/tools/weaponDestroy.lua
Lua:
function onUse(cid, item, fromPosition, itemEx, toPosition)

	return destroyItem(cid, itemEx, toPosition)
end

data/actions/lib/actions.lua
Lua:
SPOTS = {384, 418, 8278, 8592}
ROPABLE = { 294, 369, 370, 383, 392, 408, 409, 427, 428, 430, 462, 469, 470, 482, 484, 485, 489, 924, 3135, 3136, 7933, 7938, 8170, 8286, 8285,
	8284, 8281, 8280, 8279, 8277, 8276, 8323, 8380, 8567, 8585, 8596, 8595, 8249, 8250, 8251, 8252, 8253, 8254, 8255, 8256, 8972, 9606, 9625 }

HOLES = {468, 481, 483, 7932, 8579}
SAND_HOLES = {[8568] = 8567}
SAND = 231
SAND1 = 9059

JUNGLE_GRASS = {2782, 3985}
SPIDER_WEB = {7538, 7539}
WILD_GROWTH = {1499, 11099}

POOL = 2016

SPECIAL_FOODS = {
	[9992] = "Gulp.", [9993] = "Chomp.", [9994] = "Chomp.", [9995] = "Chomp.", [9997] = "Yum.",
	[9998] = "Munch.", [9999] = "Chomp.", [10000] = "Mmmm.", [10001] = "Smack."
}

function destroyItem(cid, itemEx, toPosition)
	if(itemEx.uid <= 65535 or itemEx.actionid > 0) then
		return false
	end
	
	if(isInArray(SPIDER_WEB, itemEx.itemid)) then
		doSendMagicEffect(toPosition, CONST_ME_POFF)
		if math.random(4) == 1 then
			doTransformItem(itemEx.uid, itemEx.itemid + 6)
			doDecayItem(itemEx.uid)
		end
		return true
	end

	if not(isInArray({1770, 2098, 1774, 2064, 2094, 2095, 1619, 2602, 3805, 3806}, itemEx.itemid) or
		(itemEx.itemid >= 1724 and itemEx.itemid <= 1741) or
		(itemEx.itemid >= 2581 and itemEx.itemid <= 2588) or
		(itemEx.itemid >= 1747 and itemEx.itemid <= 1753) or
		(itemEx.itemid >= 1714 and itemEx.itemid <= 1717) or
		(itemEx.itemid >= 1650 and itemEx.itemid <= 1653) or
		(itemEx.itemid >= 1666 and itemEx.itemid <= 1677) or
		(itemEx.itemid >= 1614 and itemEx.itemid <= 1616) or
		(itemEx.itemid >= 3813 and itemEx.itemid <= 3820) or
		(itemEx.itemid >= 3807 and itemEx.itemid <= 3810) or
		(itemEx.itemid >= 2080 and itemEx.itemid <= 2085) or
		(itemEx.itemid >= 2116 and itemEx.itemid <= 2119)) then
		return false
	end

	if(math.random(1, 7) == 1) then
		if(isInArray({1738, 1739, 1770, 2098, 1774, 1775, 2064}, itemEx.itemid) or
			(itemEx.itemid >= 2581 and itemEx.itemid <= 2588)) then
				doCreateItem(2250, 1, toPosition)
		elseif((itemEx.itemid >= 1747 and itemEx.itemid <= 1749) or itemEx.itemid == 1740) then
			doCreateItem(2251, 1, toPosition)
		elseif((itemEx.itemid >= 1714 and itemEx.itemid <= 1717)) then
			doCreateItem(2252, 1, toPosition)
		elseif((itemEx.itemid >= 1650 and itemEx.itemid <= 1653) or
			(itemEx.itemid >= 1666 and itemEx.itemid <= 1677) or
			(itemEx.itemid >= 1614 and itemEx.itemid <= 1616) or
			(itemEx.itemid >= 3813 and itemEx.itemid <= 3820) or
			(itemEx.itemid >= 3807 and itemEx.itemid <= 3810)) then
				doCreateItem(2253, 1, toPosition)
		elseif((itemEx.itemid >= 1724 and itemEx.itemid <= 1737) or
			(itemEx.itemid >= 2080 and itemEx.itemid <= 2085) or
			(itemEx.itemid >= 2116 and itemEx.itemid <= 2119) or
			isInArray({2094, 2095}, itemEx.itemid)) then
				doCreateItem(2254, 1, toPosition)
		elseif((itemEx.itemid >= 1750 and itemEx.itemid <= 1753) or isInArray({1619, 1741}, itemEx.itemid)) then
			doCreateItem(2255, 1, toPosition)
		elseif(itemEx.itemid == 2602) then
			doCreateItem(2257, 1, toPosition)
		elseif(itemEx.itemid == 3805 or itemEx.itemid == 3806) then
			doCreateItem(2259, 1, toPosition)
		end

		doRemoveItem(itemEx.uid, 1)
	end

	doSendMagicEffect(toPosition, CONST_ME_POFF)
	return true
end

data/actions/actions.xml
Code:
	<action itemid="2321" event="script" value="tools/weaponDestroy.lua"/>
	<action fromid="2376" toid="2388" event="script" value="tools/weaponDestroy.lua"/>
	<action fromid="2390" toid="2398" event="script" value="tools/weaponDestroy.lua"/>
	<action fromid="2400" toid="2409" event="script" value="tools/weaponDestroy.lua"/>
	<action fromid="2411" toid="2419" event="script" value="tools/weaponDestroy.lua"/>
	<action fromid="2421" toid="2441" event="script" value="tools/weaponDestroy.lua"/>
	<action fromid="2443" toid="2454" event="script" value="tools/weaponDestroy.lua"/>
	<action fromid="3961" toid="3962" event="script" value="tools/weaponDestroy.lua"/>
	<action itemid="3966" event="script" value="tools/weaponDestroy.lua"/>
	<action itemid="6528" event="script" value="tools/weaponDestroy.lua"/>
	<action itemid="6553" event="script" value="tools/weaponDestroy.lua"/>
	<action fromid="7379" toid="7392" event="script" value="tools/weaponDestroy.lua"/>
	<action fromid="7402" toid="7437" event="script" value="tools/weaponDestroy.lua"/>
	<action fromid="7449" toid="7456" event="script" value="tools/weaponDestroy.lua"/>
	<action itemid="8209" event="script" value="tools/weaponDestroy.lua"/>
	<action fromid="8601" toid="8602" event="script" value="tools/weaponDestroy.lua"/>
	<action fromid="8924" toid="8932" event="script" value="tools/weaponDestroy.lua"/>
 
Last edited:
Back
Top