RobertBeckebans / RBDOOM-3-BFG

Doom 3 BFG Edition source port with updated DX12 / Vulkan renderer and modern game engine features
https://www.moddb.com/mods/rbdoom-3-bfg
GNU General Public License v3.0
1.38k stars 247 forks source link

Flash ActionScript 3 Support #758

Open RobertBeckebans opened 1 year ago

RobertBeckebans commented 1 year ago

This allows to import new Flash (.swf) menus created by Adobe Animate.

The implementation will be basic so it is enough to import new files without the need of some cracked warez edition of the abandoned Macromedia Flash.

Kudos to @HarrievG for all the hard work.

stephenap07 commented 1 year ago

@HarrievG I've been testing this with an incomplete SWF file, but one I thought would be good enough to test functionality. When loading my test SWF back in binarized format, I get an assertion. I'll attach my FLA to the discord if you want to look at it.

image

Other issue: the stop(); function in a frame is never executed for some reason. I haven't looked too far into why yet, I'll probably try to debug this tomorrow. image

Since the stop function is never run, my carousel widget plays the rollIn/rollOut animations continuously.

myswf.webm

HarrievG commented 1 year ago

If you send your fla I can do something. Images and screenshots are useless here. It also is better to continue this bughunt on discord in the standalone dev channel where I shared my test fla with you.

HarrievG commented 1 year ago

Just to follow up on this for future reference: the swf publish and AS settings need to be to

  1. debugging permitted
  2. disabled strict mode
  3. disabled warning mode
  4. Set the action script api to be used as source path. -> inhibitControl () is an engine function and needed for basic ingame UI functionality
HarrievG commented 1 year ago

@stephenap07 Can be closed?

RobertBeckebans commented 11 months ago

I rebased the branch on the master/1.5.1 and added @HarrievG's last crash fix.

HarrievG commented 10 months ago

whooh