Commit graph

36 commits

Author SHA1 Message Date
Phoenix Eliot
663c220eaf Show wev-dev iFrame error messages like Aether's
This heavily refactors SpellView and adds infrastructure for receiving and reporting Errors raised by the web-dev iFrame. The web-dev error system, the Aether error system, and the Ace html-worker avoid disturbing each others' errors/annotations (though currently Aether+web-dev errors won't coexist), and they clear/update their own asynchronously.

Show web-dev iFrame errors as Ace annotations

Add functional error banners (with poor messages)

Improve error banners, don't allow duplicate Problems

Refactor setAnnotations override

Convert all constructor calls for Problems

Add comments, clean up

Clean up

Don't clear things unnecessarily

Clean up error message sending from iFrame

Add web-dev:error schema

Clarify error message attributes

Refactor displaying AetherProblems

Refactor displaying user problem banners

Refactor onWebDevError

Set ace styles on updating @problems

Clean up, fix off-by-1 error

Add comment

Show stale web-dev errors differently
Some web-dev errors are generated by "stale" code — code that's still running in the iFrame but doesn't have the player's recent changes.
This shows those errors differently than if they weren't "stale", and suggests they re-run their code.

Hook up web-dev event schema

Destroy ignored duplicate problems

Functionalize a bit of stuff

Fix ProblemAlertView never loading
2016-08-31 10:59:06 -07:00
Matt Lott
f2597229b5 No autocomplete x y, rename Zatanna to Autocomplete
Don’t autocomplete common variables ’x’ or ‘y’:
return if /^x$|^y$/i.test(prefix)
Renaming zatanna to autocomplete

Closes #3865
2016-08-22 05:46:07 -07:00
Nick Winter
d77625bc77 Game dev levels (#3810)
* Tweak API doc behavior and styling

* Instead of moving to the left during active dialogues, just move to the top
* Allow pointer events
* Adjust close button
* Re-enable pinning API docs for game-dev and web-dev levels

* Make sidebar in PlayGameDevLevelView stretch, better layout columns

* Set up content of PlayGameDevLevelView sidebar to scroll

* Add rest of PlayGameDevLevelView sidebar content, rework what loading looks like

* Finish PlayGameDevLevelView

* Add share area below
* Cover the brown background, paint it gray

* Tweak PlayGameDevLevelView

* Have progress bar show everything
* Fix Surface resize handling

* Fix PlayGameDevLevelView resizing incorrectly when playing

* Add GameDevVictoryModal to PlayGameDevLevelView

* Don't show missing-doctype annotation in Ace

* Hook up GameDevVictoryModal copy button

* Fix onChangeAnnotation runtime error

* Fix onLevelLoaded runtime error

* Have CourseVictoryModal link to /courses when course is done

* Trim, update CourseDetailsView

* Remove last vestiges of teacherMode
* Remove giant navigation buttons at top
* Quick switch to flat style

* Add analytics for game-dev

* Update Analytics events for gamedev

* Prefix event names with context
* Send to Mixpanel
* Include more properties

* Mostly set up indefinite play and autocast for game-dev levels

* Set up cast buttons and shortcut for game-dev

* Add rudimentary instructions when students play game-dev levels

* Couple tweaks

* fix a bit of code that expects frames to always stick around
* have PlayGameDevLevelView render a couple frames on load

* API Docs use 'game' instead of 'hero'

* Move tags to head without combining

* Add HTML comment-start string

Fixes missing entry point arrows

* Fix some whitespace
2016-07-28 13:39:58 -07:00
Nick Winter
e3670165e7 Remove code for multiple spells; rename SpellListTabEntryView to SpellTopBarView; remove hero avatar from SpellTopBarView 2016-07-14 22:43:25 -07:00
Nick Winter
220db3106c Run button now recreates web-dev DOM; no submit button 2016-07-14 19:48:27 -07:00
Nick Winter
ed320a8d9e WebSurfaceView now parsing player code through virtual DOM into iframe 2016-07-14 18:07:36 -07:00
Nick Winter
a7114a2719 Implement headless verifier; fix headless client 2016-04-12 19:34:05 -07:00
Nick Winter
95c703a7df Simulate games in background while playing levels if we think there's extra compute power 2015-11-29 12:30:19 -08:00
Nick Winter
9b990ba452 Mark mirror match multiplayer levels complete on success 2015-11-17 15:23:34 -08:00
Nick Winter
947811c01b Replayable once-per-day increasing-difficulty level basics. 2015-01-05 10:44:24 -08:00
Nick Winter
ffaa42cb9b Added detection of suspect code fragment deletion. Implemented Chloe's styling advice on restricted items. Fixed purchasing items clobbering inventory changes. 2014-11-23 12:18:42 -08:00
Nick Winter
f310719cee Restarting level now doesn't clear anything except code unless you hold down shift. 2014-11-19 15:24:50 -08:00
Nick Winter
0640f382ba Fixed coordinate hover cursors fighting flag cursors. Added suspect code check functionality for scripts to slap hands. 2014-11-19 14:29:11 -08:00
Nick Winter
956186b538 Fixed #1604: changing languages and reloading work better now. 2014-11-10 09:36:40 -08:00
Matt Lott
377138f35f Hide problem alert on code change 2014-11-09 11:36:17 -08:00
Matt Lott
588fa0620e Jiggle user code problem alert 2014-11-07 22:46:12 -08:00
Nick Winter
cfff09b01e Merged big .executing arrow. 2014-11-07 16:06:14 -08:00
Nick Winter
5090a47afc Implementing more of new code editor design. Removed ThangList, EditorConfigModal, and a few other obsolete things. 2014-11-07 16:04:35 -08:00
Matt Lott
b4dde5705b Place error message over Surface next to line 2014-11-06 21:43:43 -08:00
Nick Winter
ad2fdb9dde Working on new Fully Illustrated designs for level play view and iPad interface. 2014-11-02 14:51:01 -08:00
Nick Winter
7da65dec5b Including leather boots as required gear better. Labeling 'Your Skills'. Not showing a minus for incomplete goals. Adding script triggers for deleting required sample code. 2014-10-29 22:29:36 -07:00
Nick Winter
24da2aa80a Preserving flag history and submission count so that things are more stable in between real-time submissions. 2014-10-18 17:32:01 -07:00
Nick Winter
fcd174ed22 Re-enabled line-by-line highlighting through brute force for hero levels. 2014-10-07 22:28:53 -07:00
Nick Winter
f53f6bf0a3 Misc changes, wishing I could get sounds to work at lower volumes. 2014-09-10 19:55:00 -07:00
Nick Winter
2396f9c26d Updates to go along with latest iPad app spell palette loading. 2014-09-08 21:40:52 -07:00
Nick Winter
6ed89a2d79 Temporarily worked around issue with doubled sprite dragging logic in ThangsTabView. 2014-09-08 12:29:49 -07:00
Nick Winter
1bd1ca0ced Fixed #1530. Propagated i18n. Starting to add some more events for the iOS app. 2014-09-07 20:54:25 -07:00
Nick Winter
2f07c3e8d3 Adding communication with iPad app. 2014-09-06 19:50:31 -07:00
Nick Winter
02255044e3 Fixed #847. Fixed some subscription schemas. 2014-08-27 18:43:17 -07:00
Nick Winter
ee9e453896 Fixed #828. Added many other minor refactorings. 2014-08-27 12:24:11 -07:00
Nick Winter
718d586f07 A ton of misc bug fixes and performance improvements, getting ready to merge world streaming and flags back in. 2014-08-24 21:39:34 -07:00
Jeff Hemphill
a8d369ed1a Add schemas for tome subscriptions 2014-07-12 01:55:35 -07:00
Tery Lim
618ade4946 Clean up mixed quotes 2014-07-01 12:23:22 +08:00
Nick Winter
aee95ac5c0 Improved per-language spell palette and tab documentation. 2014-06-25 22:56:39 -07:00
Nick Winter
04976a7b14 Working on the Tome displaying the proper syntax for the selected programming language. Fixed #1225. 2014-06-24 21:08:01 -07:00
Ruben Vereecken
c2c0496883 Added schema stubs for about everything 2014-04-11 14:22:49 +02:00