Commit Graph

279 Commits

Author SHA1 Message Date
zeromus 2203270868 Merge remote-tracking branch 'remotes/origin/pr/1131'' 2018-03-13 20:37:48 -04:00
zeromus b179a30d99 Merge remote-tracking branch 'remotes/origin/pr/1080'
# Conflicts:
#	BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj

merges PR #1080
closes PR #1080
(let's see if either of these can do it)
2018-03-13 16:33:53 -04:00
Azreal 6032063518 Now looks good :) 2018-03-10 03:00:44 -08:00
Azreal 26c0b1fff2 Continuing... 2018-03-10 02:49:39 -08:00
Azreal 96a35fe71b My first commit - add file "EmuLuaLibrary.Tastudio.cs" to examples (not all have a examples yet)" 2018-03-10 02:33:41 -08:00
TASeditor 6580c2abef Tastudio: drawing stuff, selection, patterns, add column lua function (#1125)
* alt+columnclick draws pattern
* selection: taseditor logic
* shift/ctrl keys restructure to taseditor
shift + up/down: move frame courser up/down by one
shift + pageup/pagedown: move frame courser to next/prev marker
ctrl + left/right: add/remove selection at last selected row
ctrl + shift + left/right: add/remove selection at first selected row
* Alt+drawing pattern
still not working with drawing upwards
* pattern drawing
upwards drawing working except it doesn't update last row.
TODO: Disallow Alt click to focus on menu.
* pattern: last input ignoring fixed
* Lua columnms
TODO: Don't save them into tasproj
* no need to update float edit stuff or cell changes when its not needed
* Shift+clicking draws input from first selected row to clicked cell
* fixed pattern drawing on empty cells
2018-03-08 22:15:47 +03:00
Xadrophonix d91bd35a95 Second pool of examples. 2018-03-04 14:07:06 -08:00
Masterjun 605ca5816a Lua: fix client.openrom 2018-03-01 01:06:15 +01:00
TASeditor 36900b15d4 tastudio lua: setinput functions, onbranch callbacks (#1098) 2018-02-10 14:58:46 +03:00
vadosnaprimer eea6740722 lua: client.isturbo() and client.isseeking() 2018-01-06 13:30:47 +03:00
Ashafix 07da0170fa unified camelCase for Lua functions, changed Lua test script 2017-12-24 11:42:51 +01:00
Ashafix 4d063f6061 new library for communicating with other programs via Lua 2017-12-24 00:24:22 +01:00
adelikat 3f8aa0e018 Lua - implement tastudio.getbranches() and tastudio.getbranchinput(), fixes #843 2017-08-05 11:04:00 -05:00
adelikat 51eed83cce lua - tastudio.getselection() - make key of the lua table an index 2017-07-24 08:44:15 -05:00
zeromus d5770fb8a3 re-apply "keepalive" GC fixes to luainterface mode in emuhawk; maybe it will actually work now and not result in crashes. at least we should check it. 2017-07-22 23:41:30 -05:00
zeromus afda5dbb62 set a value in the switchable lua library to indicate whether it's NLua or LuaInterface; effectively undo 8bc067cbbe for LuaInterface 2017-07-15 16:36:18 -05:00
Trivial-Man 7b8818c35b Resolve issues with Master
- Uses NLua instead of LuaInterface
- Uses LuaMethod instead of LuaMethodAttribute
- All LuaCanvas Lua calls now begin with lowercase

- Also allows LuaPictureBoxes added through forms to be compatible with addClick
2017-07-13 22:32:27 -06:00
zeromus d54fee4d91 Merge branch 'master' into master 2017-07-13 19:17:09 -05:00
adelikat 5978db7036 Lua - forms.setsize() - add a description instead of just TODO 2017-07-11 08:17:49 -05:00
adelikat 9581ce6a93 rename LuaMethodAttributes to LuaMethodAttribute so as not to be a bad person 2017-07-10 14:02:08 -05:00
zeromus 0f686a0de1 * revert strict string checking behaviour from nlua Revision 10f4d0ce78a2a3cb9b727ac55c8705385f0ded7e (we dont want it, probably)
* do a better job porting old commits from bizhawk (should fix memory leaks, optional arguments)
2017-07-10 12:59:06 -05:00
adelikat 5781746251 Lua - use the proper Log method in some lua libraries 2017-07-10 11:24:32 -05:00
zeromus 3417453b43 use NLua+KopiLua instead of LuaInterface 2017-07-09 23:51:02 -05:00
Trivial-Man 1a1ae98a2e EmuLuaLibrary.Gui: update createcanvas
createcanvas now takes additional parameters that specify where the canvas window should be created
2017-06-29 20:03:18 -06:00
Trivial-Man eb6676e0ba EmuLuaLibrary.Forms: add more PictureBox functions
Adds the functions for getting the mouse x and y coordinates from PictureBox components.
2017-06-29 19:59:27 -06:00
Trivial-Man 2ddadeae24 Add PictureBox component and methods for drawing on it 2017-06-20 01:20:27 -06:00
adelikat 3c7707a6a0 lua - add gui.clearImageCache, also add a param to drawImage that can force it to not be cached if desired 2017-05-29 11:09:19 -05:00
adelikat f81f745fcc Some luaconsole refactoring and moving more logic into LuaImp 2017-05-24 15:59:05 -05:00
adelikat 770f27dfd4 Console lua library functions - check if LuaConsole is loaded on these calls. Currently the console should always be open if a script is being called but this is a preparation commit to eventually support running lua scripts without the lua console loaded 2017-05-23 13:05:36 -05:00
adelikat facd845453 Lua Console - Move StartLuaDrawing() and EndLuaDrawing() to LuaImp since they exclusively LuaImp logic 2017-05-23 12:40:40 -05:00
adelikat 6196d81b5d Move _luaList from LuaConsole to LuaImp 2017-05-22 16:47:27 -05:00
adelikat a6414ff05c Mainform cleanup round 2 2017-05-22 14:23:13 -05:00
adelikat 31e68a38f9 Cleanup EmuHawk lua library code 2017-05-19 09:47:18 -05:00
adelikat 7f269d25df Make lua library dependent services private 2017-05-19 08:58:23 -05:00
nattthebear ebe789eed2 heh 2017-05-10 07:45:23 -04:00
zeromus 8bc067cbbe lua: fix memory leak causing crash after a few dozen script loads/resets 2017-05-10 01:58:19 -05:00
adelikat e839a1c163 Add lua canvas methods to documentation 2017-05-07 16:33:48 -05:00
zeromus ac767a2acc clarification to the saveram flushing system 2017-05-06 17:50:36 -05:00
adelikat 20d2a7d198 Lua - tastudio onquery callbacks - attempt to better clarify the expected lua function that is taken as a parameter 2017-04-30 12:05:27 -05:00
adelikat 1184e8ed05 lua - implement tastudio.getselection(), tastudio.insertframes(), tastudio.deleteframes() 2017-04-22 20:50:03 -05:00
J.D. Purcell b53502eed8 Spaces -> tabs. 2017-04-15 16:37:30 -04:00
adelikat e23dc983f0 Merge pull request #826 from lenalia/master
Added horizalign and vertalign to DrawText
2017-04-11 16:43:20 -05:00
lenalia 117ce07aaf Added horizalign and vertalign to DrawText 2017-04-04 21:20:33 -04:00
shanehoman 58e1b52369 expose MainForm.SaveRam() method to lua 2017-04-02 23:12:38 -07:00
feos 853432da26 tastudio lua: add recording mode functions
finally fixes #793
2017-03-08 19:56:44 +03:00
adelikat 5d4c8020c2 Delete more stuff 2017-02-22 10:12:14 -06:00
adelikat f35717aae2 Remove yet more unused code 2017-02-22 10:11:08 -06:00
adelikat 7653b86f44 Remove some unused code 2017-02-22 10:09:44 -06:00
feos b5730bda3a clarify lua doc 2017-02-19 11:56:17 +03:00
zeromus ea2188dc46 make tastudio.setplayback correctly restore the recording flag after it finishes seeking from the greenzone to the target frame 2017-02-07 00:01:14 -06:00
zeromus d87a2b27a2 make lua's new tastudio.setplayback re-enable the record flag if it was set (the existing logic leaves it disabled I think as security against the GUI use case where users might stomp their video seeking while playing in record mode). future work: add lua control for the record mode flag 2017-02-05 04:20:07 -06:00
zeromus 539cdc29f3 add SetPlayback to tastudio lua library. Can't be 100% sure it works, but it seems to be working OK. it may hang everything up if you seek through a really long redzone..... 2017-02-04 21:40:29 -06:00
zeromus a70e6e2fc4 fix #790 (Scroll wheel missing from input.getMouse()) 2017-02-04 20:52:32 -06:00
adelikat 0480ea3f44 when toggling a script on, update on screen lua drawing stuff. On gui.clearGraphics() immediate update the screen 2017-02-04 15:54:04 -06:00
adelikat 0c7cedd2ac lua - tastudio.setmarker() - make marker message optional 2017-02-04 15:11:43 -06:00
zeromus f7638e8352 "fix" client.bufferwidth and client.bufferheight .... I dont understand why they were doing what they were doing. It seems like such a simple thing, just return the dimensions of the core's videoprovider. Someone should rethink all these (and the surface names, and the padding names) and craft a complete, new design. 2017-01-26 00:54:44 -06:00
Isotarge ab1b1877e8 Lua: Implement forms.setdropdownitems() 2016-12-26 12:13:19 +10:30
adelikat 3bfce81eae LuaConsole - have a RequiredService of IEmulator and pass it into the lua implementation instead of using Global.Emulator 2016-12-06 10:35:11 -06:00
adelikat e99bc9ba41 use the Emulator property instead of Global.Emulator in some lua library files 2016-12-04 12:37:29 -06:00
adelikat b7a6542fb6 Lua - gui.drawImage(), gui.drawImageRegion() - log an error if image can not be found, instead of throwing an exception 2016-11-19 14:10:17 -06:00
adelikat e281950902 Close a lua instance before creating a new one, fixes #455 2016-10-06 15:17:05 -05:00
feos fc66ec1b02 Lua docs: fix #703 2016-09-29 18:09:58 +03:00
adelikat 11b4f5a5b1 Lua - fix #691 - When calling client.reboot_core we still want to re-inject dependencies to the lua libraries 2016-08-28 12:07:26 -04:00
feos 1e6b3bfbee lua text: display trailing spaces 2016-08-06 15:45:07 +03:00
Isotarge 5a20a520bd Tools: Ram -> RAM #669 2016-07-22 01:32:54 +09:30
zeromus 676b5791f6 lua: add gui.DrawFinish() which will let you choose when to finish drawing; and add optional argument to gui.DrawNew which when set to false lets you keep it from being cleared. 2016-04-21 16:43:37 -05:00
zeromus 1a1a688b96 remove NeedsToPaint; client now repaints ~100fps while paused all the time. as it already did when input display was enabled. fixes #615.. probably 2016-04-20 12:17:41 -05:00
feos fcbf4adbec lua: remove bg color from gui.text function, since it's always a black halo. 2016-04-18 19:39:24 +03:00
feos 435323489e lua: gui.defaultPixelFont() 2016-02-10 20:06:45 +03:00
zeromus 1a123fa491 allow "#aarrggbb" as Color parameter to forms.setproperty. fixes #547 2016-02-08 02:33:58 -06:00
adelikat 8168031bed Make TargetZoomFactor a per systemId setting 2016-01-31 21:05:08 -05:00
zeromus 5e89e563d0 overhaul lua sandboxing so that each lua script has its own sandbox. elaborate tracking of winform/event ownership to ensure that lua doesnt receive calls without going through the owner's sandbox. add win32-specific speed hacks for currdir set/get at higher speed. There may be bugs in this commit, but I think we're on the right track now. 2016-01-31 19:54:55 -06:00
adelikat b6406fe523 lua - client.displaymessages() 2016-01-30 12:08:37 -05:00
pjgat09 e4a4a9606c Lua forms: Added a scrollbars argument for creating a textbox. 2016-01-15 21:19:25 -05:00
feos 23b3784123 lua: gui.defaultTextBackground() 2015-12-20 14:28:31 +03:00
zeromus 260ad45a88 fix lua's reboot_core function... maybe 2015-12-19 21:14:13 -06:00
pjgat09 d54e53d329 Lua forms.setproperty: Convert the passed value to an enum if applicable 2015-12-19 00:01:06 -05:00
pgrimsrud bb327261ae Add a return value to the main function for various purposes.
Add Lua function ExitCode to allow script writers to terminate the client with an exit code.
2015-12-15 22:39:42 -07:00
feos eb41e8a8e0 lua: remove registered functions on toggle option. 2015-11-29 22:56:28 +03:00
feos 0be8f8c564 lua: another pixelFont tweak. 2015-11-29 22:56:26 +03:00
feos fbd1d6d8e2 Lua: autoload recent scripts too (unless there's a recent session to autoload).
pixelText bg tweak.
2015-11-29 13:29:48 +03:00
feos 128c09e7b4 progress with lua:
- added fceux and gens/snes9x pixelated fonts
- added gui.pixelFont() function for them (no resizing, so perfectly scalable)
- added background to drawText and pixelText (halo was painfully slow, so just a box)
- reordered fore and back colors for gui.text (no need to specify back every time we want to change fore). thought its back color was shadow, that is obsoleted by halo now, whose color we can't change. anyway, it's way slower than simple text functions, so they should be used mostly.
- option to toggle all scripts if none is selected. greatly reduces routine when heavily tweaking a script, and is just generally pretty.
2015-11-28 22:19:15 +03:00
feos 2ce108e310 lua: ability to SetBranchText.
doesn't make much sense to add text to existing branches from lua, but highly useful to set some text to a new branch.
and we also have a default branch text variable now.
2015-11-26 00:12:25 +03:00
zeromus 283cb4ae50 fix loading of roms from commandline 2015-11-12 17:47:39 -06:00
Isotarge 02c04d0088 Fix forms.destroyall() and call it when lua console closes
Fixes #454
2015-11-07 01:38:44 +10:30
zeromus c3ff70b864 fix gameExtraPadding coordinate translation and revise lua autodoc for the concerned functions. Presently the entire assortment of functions is confusing, but at least it does something that works. 2015-10-16 19:17:23 -05:00
zeromus 9b222653f5 fix some lua autodoc 2015-10-16 18:28:23 -05:00
zeromus 9410a6cb9d lua console - tweak output behaviour for script evaluation textbox 2015-10-15 18:32:59 -05:00
zeromus 169f36ee85 code formatting 2015-10-15 18:32:59 -05:00
zeromus 3592d1418d lua - add client.SetSoundOn and client.GetSoundOn 2015-10-13 18:54:05 -05:00
zeromus 21579c1c86 lua - add client.SetClientExtraPadding 2015-10-12 20:30:09 -05:00
zeromus cf1c53f3fb fix quicknes lua rendering being offset incorrectly sometimes. fixes #498 2015-09-16 14:02:45 -05:00
adelikat 98bc140a84 Issue #385 - Lua - add memorysavestate library for making and loading savestates in memory, with save, load, remove, and clearall methods 2015-09-09 20:47:56 -04:00
zeromus d0f56ac98d lua - add client.SetGameExtraPadding(left,top,right,bottom) 2015-08-09 13:57:45 -05:00
adelikat 64126fbad3 issue #469 - lua - forms.newform() - add an onclosed callback optional parameter 2015-08-04 20:17:04 -04:00
adelikat ad821c90d5 lua - implement client.exit() 2015-07-31 18:44:53 -04:00
adelikat a8bf7f1828 oops 2015-07-10 10:26:51 -04:00
adelikat 7ecf96772c tastudio/lua - implement tastudio.setlag() 2015-07-09 13:16:55 -04:00
adelikat 9455aec767 Tastudio/lua - implement tastudio.onqueryitemicon() 2015-07-09 12:47:59 -04:00
adelikat 19423092cd Tastudio/lua - implement tastudio.ongreenzoneinvalidated 2015-07-02 14:51:42 -04:00