WildTurkey
Previously known as giv_me_rep
- Reaction score
- 87
Hello,
decided I'd give crack at writing something in LUA and a little trip back to memory lane on WC3 sounded like a nice idea.
I'm struggling however to just replace a unit selected from a unitgroup!
Would appreciate a set of eyes from the JASS guys, let me know if you spot an issue here.
I think it must be with my local target = GetEnumUnit(), with this in mind i started trying to just create a unit but I couldn't get that going either :S
Unit Id's are taken from WorldEditor, tried with default as well 'hgyr' was tested with in case the issue was that 'h000'is a structure, no dice. Tried with quotationg marks instead of inverted commas but no dice there either. Tried Creating a unit without luck, Destructible without luck. Very very confused...
I put some print lines in there to mark and the last item printed is 6, all units are deleted at the end of this and no new units are created which then tells me that in fact GetEnumUnit() is being detected and in fact the issue is with the unit ID? But then why does the flying machine code not work in testing? I am most confused.
Kind regards
decided I'd give crack at writing something in LUA and a little trip back to memory lane on WC3 sounded like a nice idea.
I'm struggling however to just replace a unit selected from a unitgroup!
Would appreciate a set of eyes from the JASS guys, let me know if you spot an issue here.
I think it must be with my local target = GetEnumUnit(), with this in mind i started trying to just create a unit but I couldn't get that going either :S
Unit Id's are taken from WorldEditor, tried with default as well 'hgyr' was tested with in case the issue was that 'h000'is a structure, no dice. Tried with quotationg marks instead of inverted commas but no dice there either. Tried Creating a unit without luck, Destructible without luck. Very very confused...
I put some print lines in there to mark and the last item printed is 6, all units are deleted at the end of this and no new units are created which then tells me that in fact GetEnumUnit() is being detected and in fact the issue is with the unit ID? But then why does the flying machine code not work in testing? I am most confused.
Kind regards
Code:
--calls here first
function initSelectTownBuildings()
--select all units in unit group
--for each unit in unit group:
print("1")
local grpobj = GetUnitsOfPlayerAll(Player(0)) --create unit group of place holder objects
local unitCount = CountUnitsInGroup(grpobj)
print("2")
print("unit Count: "..unitCount)
ForGroupBJ(grpobj, initPlaceTownBuildings) --run function for each object in group
end
function initPlaceTownBuildings()
print("3")
--if random number == X do action Ax
--add more stuff later maybe
local rand = GetRandomInt(1, 1)
print("4")
local target = GetEnumUnit() --get the unit pickd
print("5")
print("rand: ".. rand)
--lumbermill scenario
if (rand == 1) then
print("6")
--replace placeholder with lumbermill
ReplaceUnitBJ(target, 'h000', bj_UNIT_STATE_METHOD_MAXIMUM )
print("7")
--CODE DOES NOT REACH THIS POINT!
end
end