--"local, cross-function variables"
local treeType1Ids = {2767, 2785, 2786, 2708, 2710, 2697, 2709, 2707, 2703, 2704, 2706, 2705, 2768, 2712, 2700, 2698, 2717, 7023, 2718, 7020, 2719, 7021, 2720, 7022, 2722, 2701, 2702, 2699, 7024}
local lcid = 0
local litem = 0
local lfromPosition = 0
local litemEx
local litemExID = 0
local litemExUID = 0
local ltoPosition = 0
local lName = "player"
local storageIDX = (SKILL_WOODCUTTING*10) + 1
local storageIDY = (SKILL_WOODCUTTING*10) + 2
local storageIDZ = (SKILL_WOODCUTTING*10) + 3
local storageIDDir = (SKILL_WOODCUTTING*10) + 4
local storageIDisChopping = (SKILL_WOODCUTTING*10) + 5
local storageIDChopped = (SKILL_WOODCUTTING*10) + 6
local storageIDitemid = (SKILL_WOODCUTTING*10) + 7
local storageIDitemuid = (SKILL_WOODCUTTING*10) + 8
function doChopTree()
pitemExID = getPlayerStorageValue(lcid, storageIDitemid)
pitemExUID = getPlayerStorageValue(lcid, storageIDitemuid)
doCreatureSay(lcid, string.format("itemEx1: %d %d", pitemExID, pitemExUID), TALKTYPE_SAY)
if pitemExID == 2767 then
doTransformItem(pitemExUID, 18548)
doDecayItem(pitemExUID)
elseif pitemExID == 2785 then
doTransformItem(pitemExUID, 18549)
doDecayItem(pitemExUID)
elseif pitemExID == 2786 then
doTransformItem(pitemExUID, 18549)
doDecayItem(pitemExUID)
elseif pitemExID == 2708 then
doTransformItem(pitemExUID, 18550)
doDecayItem(pitemExUID)
elseif pitemExID == 2710 then
doTransformItem(pitemExUID, 18551)
doDecayItem(pitemExUID)
elseif pitemExID == 2697 then
doTransformItem(pitemExUID, 18552)
doDecayItem(pitemExUID)
elseif pitemExID == 2709 then
doTransformItem(pitemExUID, 18553)
doDecayItem(pitemExUID)
elseif pitemExID == 2707 then
doTransformItem(pitemExUID, 18554)
doDecayItem(pitemExUID)
elseif pitemExID == 2703 then
doTransformItem(pitemExUID, 18555)
doDecayItem(pitemExUID)
elseif pitemExID == 2704 then
doTransformItem(pitemExUID, 18556)
doDecayItem(pitemExUID)
elseif pitemExID == 2706 then
doTransformItem(pitemExUID, 18557)
doDecayItem(pitemExUID)
elseif pitemExID == 2705 then
doTransformItem(pitemExUID, 18558)
doDecayItem(pitemExUID)
elseif pitemExID == 2768 then
doTransformItem(pitemExUID, 18559)
doDecayItem(pitemExUID)
elseif pitemExID == 2711 then
doTransformItem(pitemExUID, 18560)
doDecayItem(pitemExUID)
elseif pitemExID == 2712 then
doTransformItem(pitemExUID, 18561)
doDecayItem(pitemExUID)
elseif pitemExID == 2700 then
doTransformItem(pitemExUID, 18562)
doDecayItem(pitemExUID)
elseif pitemExID == 2698 then
doTransformItem(pitemExUID, 18563)
doDecayItem(pitemExUID)
elseif pitemExID == 2717 then
doTransformItem(pitemExUID, 18564)
doDecayItem(pitemExUID)
elseif pitemExID == 7023 then
doTransformItem(pitemExUID, 18565)
doDecayItem(pitemExUID)
elseif pitemExID == 2718 then
doTransformItem(pitemExUID, 18566)
doDecayItem(pitemExUID)
elseif pitemExID == 7020 then
doTransformItem(pitemExUID, 18567)
doDecayItem(pitemExUID)
elseif pitemExID == 2719 then
doTransformItem(pitemExUID, 18568)
doDecayItem(pitemExUID)
elseif pitemExID == 7021 then
doTransformItem(pitemExUID, 18569)
doDecayItem(pitemExUID)
elseif pitemExID == 2720 then
doTransformItem(pitemExUID, 18570)
doDecayItem(pitemExUID)
elseif pitemExID == 7022 then
doTransformItem(pitemExUID, 18571)
doDecayItem(pitemExUID)
elseif pitemExID == 2722 then
doTransformItem(pitemExUID, 18572)
doDecayItem(pitemExUID)
elseif pitemExID == 2701 then
doTransformItem(pitemExUID, 18573)
doDecayItem(pitemExUID)
elseif pitemExID == 2702 then
doCreatureSay(lcid, string.format("tree!: %d %d", pitemExID, pitemExUID), TALKTYPE_SAY)
doTransformItem(pitemExUID, 18574)
doDecayItem(pitemExUID)
elseif pitemExID == 2699 then
doTransformItem(pitemExUID, 18575)
doDecayItem(pitemExUID)
elseif pitemExID == 7024 then
doTransformItem(pitemExUID, 18592)
doDecayItem(pitemExUID)
end
end
function repeater()
local randStop = math.random(45)
local plGUID = getPlayerGUID(lcid)
local isChopped = getPlayerStorageValue(lcid, storageIDChopped)
local oldX = getPlayerStorageValue(lcid, storageIDX)
local oldY = getPlayerStorageValue(lcid, storageIDY)
local oldZ = getPlayerStorageValue(lcid, storageIDZ)
local oldDir = getPlayerStorageValue(lcid, storageIDDir)
local plPos = getCreaturePosition(lcid)
local newX = plPos.x
local newY = plPos.y
local newZ = plPos.z
local newDir = getPlayerLookDir(lcid)
local freeCap = getPlayerFreeCap(lcid)
if((oldX == newX) and (oldY == newY) and (oldZ == newZ) and (oldDir == newDir) and (freeCap >= 10.0) and (randStop ~= 1) and (isChopped == 0)) then
doWoodcutting()
if(isPlayer(lcid)) then
addEvent(repeater, 2000, lcid)
else
return 0
end
else
if(freeCap < 10.0) then
doCreatureSay(lcid, string.format("%s is too encumbered to continue.", lName), TALKTYPE_ORANGE_2)
end
if(randStop == 1) then
doCreatureSay(lcid, string.format("%s stops to wipe sweat from his eyes.", lName), TALKTYPE_ORANGE_2)
else
doCreatureSay(lcid, string.format("%s stops chopping1.", lName), TALKTYPE_ORANGE_2)
doCreatureSay(lcid, string.format("oldX: %d", oldX), TALKTYPE_SAY)
doCreatureSay(lcid, string.format("oldY: %d", oldY), TALKTYPE_SAY)
doCreatureSay(lcid, string.format("oldZ: %d", oldZ), TALKTYPE_SAY)
doCreatureSay(lcid, string.format("oldDir: %d", oldDir), TALKTYPE_SAY)
doCreatureSay(lcid, string.format("newX: %d", newX), TALKTYPE_SAY)
doCreatureSay(lcid, string.format("newY: %d", newY), TALKTYPE_SAY)
doCreatureSay(lcid, string.format("newZ: %d", newZ), TALKTYPE_SAY)
doCreatureSay(lcid, string.format("newDir: %d", newDir), TALKTYPE_SAY)
doCreatureSay(lcid, string.format("freeCap: %d", freeCap), TALKTYPE_SAY)
doCreatureSay(lcid, string.format("randStop: %d", randStop), TALKTYPE_SAY)
doCreatureSay(lcid, string.format("isChopped: %d", isChopped), TALKTYPE_SAY)
end
setPlayerStorageValue(lcid, storageIDX, 0)
setPlayerStorageValue(lcid, storageIDY, 0)
setPlayerStorageValue(lcid, storageIDZ, 0)
setPlayerStorageValue(lcid, storageIDDir, 0)
setPlayerStorageValue(lcid, storageIDisChopping, 0)
if(isChopped == 1) then
doChopTree()
end
end
end
--Continued on next post