mirror of
https://github.com/ErikasKontenis/SabrehavenServer.git
synced 2025-05-02 10:39:20 +02:00
obsidian knife ice statue script
This commit is contained in:
parent
b18c0517c5
commit
5f32d6f5d1
@ -22,6 +22,12 @@ local config = {
|
|||||||
|
|
||||||
-- Bone Beasts
|
-- Bone Beasts
|
||||||
[4212] = {value = 25000, newItem = 5925},
|
[4212] = {value = 25000, newItem = 5925},
|
||||||
|
|
||||||
|
-- Ice Cube
|
||||||
|
[7441] = {value = 25000, newItem = 7442},
|
||||||
|
[7442] = {value = 25000, newItem = 7444},
|
||||||
|
[7444] = {value = 25000, newItem = 7445},
|
||||||
|
[7445] = {value = 25000, newItem = 7446},
|
||||||
},
|
},
|
||||||
[5942] = {
|
[5942] = {
|
||||||
-- Demon
|
-- Demon
|
||||||
@ -34,37 +40,62 @@ local config = {
|
|||||||
|
|
||||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||||
local skin = config[item.itemid][target.itemid]
|
local skin = config[item.itemid][target.itemid]
|
||||||
|
|
||||||
if not skin then
|
if not skin then
|
||||||
return false
|
player:sendCancelMessage(RETURNVALUE_NOTPOSSIBLE)
|
||||||
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
local random, effect, transform = math.random(1, 100000), CONST_ME_MAGIC_GREEN, true
|
local random, effect, transform = math.random(1, 100000), CONST_ME_MAGIC_GREEN, true
|
||||||
if type(skin[1]) == 'table' then
|
if type(skin[1]) == 'table' then
|
||||||
|
local added = false
|
||||||
local _skin
|
local _skin
|
||||||
for i = 1, #skin do
|
for i = 1, #skin do
|
||||||
_skin = skin[i]
|
_skin = skin[i]
|
||||||
if random <= _skin.value then
|
if random <= _skin.value then
|
||||||
if isInArray({7441, 7442, 7444, 7445}, target.itemid) then
|
if target.itemid == 11343 then
|
||||||
|
effect = CONST_ME_ICEAREA
|
||||||
|
local gobletItem = player:addItem(_skin.newItem, _skin.amount or 1)
|
||||||
|
if gobletItem then
|
||||||
|
gobletItem:setDescription(_skin.desc:gsub('|PLAYERNAME|', player:getName()))
|
||||||
|
end
|
||||||
|
added = true
|
||||||
|
elseif isInArray({7441, 7442, 7444, 7445}, target.itemid) then
|
||||||
player:addItem(_skin.newItem, _skin.amount or 1)
|
player:addItem(_skin.newItem, _skin.amount or 1)
|
||||||
effect = CONST_ME_HITAREA
|
effect = CONST_ME_HITAREA
|
||||||
|
added = true
|
||||||
else
|
else
|
||||||
player:addItem(_skin.newItem, _skin.amount or 1)
|
player:addItem(_skin.newItem, _skin.amount or 1)
|
||||||
|
added = true
|
||||||
end
|
end
|
||||||
break
|
break
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if not added and target.itemid == 8961 then
|
||||||
|
effect = CONST_ME_POFF
|
||||||
|
transform = false
|
||||||
|
end
|
||||||
elseif random <= skin.value then
|
elseif random <= skin.value then
|
||||||
if isInArray({7441, 7442, 7444, 7445}, target.itemid) then
|
if target.itemid == 11343 then
|
||||||
player:addItem(skin.newItem, skin.amount or 1)
|
effect = CONST_ME_ICEAREA
|
||||||
|
local gobletItem = player:addItem(skin.newItem, skin.amount or 1)
|
||||||
|
if gobletItem then
|
||||||
|
gobletItem:setDescription(skin.desc:gsub('|PLAYERNAME|', player:getName()))
|
||||||
|
end
|
||||||
|
elseif isInArray({7441, 7442, 7444, 7445}, target.itemid) then
|
||||||
|
target:transform(skin.newItem)
|
||||||
effect = CONST_ME_HITAREA
|
effect = CONST_ME_HITAREA
|
||||||
|
transform = false
|
||||||
else
|
else
|
||||||
player:addItem(skin.newItem, skin.amount or 1)
|
player:addItem(skin.newItem, skin.amount or 1)
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
if isInArray({7441, 7442, 7444, 7445}, target.itemid) then
|
if isInArray({7441, 7442, 7444, 7445}, target.itemid) then
|
||||||
player:say('The attempt of sculpting failed miserably.', TALKTYPE_MONSTER_SAY)
|
player:say('The attempt of sculpting failed miserably.', TALKTYPE_MONSTER_SAY)
|
||||||
|
target:remove()
|
||||||
effect = CONST_ME_HITAREA
|
effect = CONST_ME_HITAREA
|
||||||
|
transform = false
|
||||||
else
|
else
|
||||||
effect = CONST_ME_POFF
|
effect = CONST_ME_POFF
|
||||||
end
|
end
|
||||||
|
Loading…
x
Reference in New Issue
Block a user