Warcraft-III-Community-Edition/W3CE

Lua GetTriggeringTrigger() & TriggerExecute W3CE-v0.1.1-alpha

Closed this issue · 2 comments

Tasyen commented

GetTriggeringTrigger() returns a different Lua TriggerId when used inside TriggerExecute(trigger).

Example Code:

Data = {}
Trigger = CreateTrigger()
Data[Trigger] = 4
TriggerAddAction(Trigger, function() print("Data: ",Data[GetTriggeringTrigger()], GetTriggeringTrigger()) end)
TriggerRegisterTimerEventPeriodic(Trigger, 1)
TriggerExecute(Trigger)

The first Print Line is nil and has a different trigger Id. Then the ones executed by the timer event.

Log: ->

[09:08:52 INF ] launcherDirectory: F:\Spiele\Warcraft III\W3CE-v0.1.1-alpha\
[09:08:52 INF ] Module: 005F0000
[09:08:52 INF ] Version: 1.29.2.9231
[09:08:52 INF NatPuncher] Searching for NAT devices...
[09:08:52 INF MultiClientSupport] Main instance detected.
[09:08:52 INF NatPuncher] NAT Device located, stopping discovery.
[09:08:52 INF MultiClientSupport] Name: Warcraft III Game Application
[09:08:52 INF MultiClientSupport] Client Port: 6112
[09:08:52 FTL ] Unable to locate assembly: System.Net.Requests.resources, Version=6.0.0.0, Culture=de-DE, PublicKeyToken=b03f5f7f11d50a3a
[09:08:52 FTL ] Unable to locate assembly: System.Net.Requests.resources, Version=6.0.0.0, Culture=de, PublicKeyToken=b03f5f7f11d50a3a
[09:08:52 ERR NatPuncher] Port Mapping Exception.
Mono.Nat.MappingException: Error 403: Not available Action
   at Mono.Nat.Upnp.ResponseMessage.Decode(UpnpNatDevice device, String message)
   at Mono.Nat.Upnp.UpnpNatDevice.DecodeMessageFromResponse(Stream s, Int32 length)
   at Mono.Nat.Upnp.UpnpNatDevice.SendMessageAsync(RequestMessage message)
   at Mono.Nat.Upnp.UpnpNatDevice.CreatePortMapAsync(Mapping mapping)
   at Mono.Nat.NatDeviceExtensions.CreatePortMap(INatDevice device, Mapping mapping)
   at W3CE.NatPuncher.CreatePortMap(Mapping mapping)
[09:08:52 ERR NatPuncher] Port Mapping Exception.
Mono.Nat.MappingException: Error 403: Not available Action
   at Mono.Nat.Upnp.ResponseMessage.Decode(UpnpNatDevice device, String message)
   at Mono.Nat.Upnp.UpnpNatDevice.DecodeMessageFromResponse(Stream s, Int32 length)
   at Mono.Nat.Upnp.UpnpNatDevice.SendMessageAsync(RequestMessage message)
   at Mono.Nat.Upnp.UpnpNatDevice.CreatePortMapAsync(Mapping mapping)
   at Mono.Nat.NatDeviceExtensions.CreatePortMap(INatDevice device, Mapping mapping)
   at W3CE.NatPuncher.CreatePortMap(Mapping mapping)
[09:08:52 WRN ForceFrozenThrone] Preferred Game Version forced to The Frozen Throne.
[09:08:54 DBG ModificationLoader] Processing war3map.w3a version 2.
[09:08:54 WRN ModificationLoader] Map has unsupported modified object 'AIdg' - Ritual Dagger (Instant Heal).
[09:08:54 WRN ModificationLoader] Map has unsupported modified object 'Ahsb' - Sundering Blades.
[09:08:54 DBG ModificationLoader] Processing war3map.w3t version 2.
[09:08:58 ERR ] TriggerRegisterFrameEvent: Unsupported event "EDITBOX_ENTER"
[09:09:00 INF Lua] Data: niltrigger: 10012C
[09:09:02 INF Lua] Data: 4trigger: 100123
[09:09:03 INF Lua] Data: 4trigger: 100123
[09:09:04 INF Lua] Data: 4trigger: 100123
[09:09:07 INF NatPuncher] Cleaning up Port Mappings.

Tasyen commented

Seems fixed in W3CE-v0.1.2-alpha

Oh, surprising. I guess it might've been related to the different Lua issues I fixed.