increpare / PuzzleScript

Open Source HTML5 Puzzle Game Engine
MIT License
903 stars 159 forks source link

Legend is case-insensitive #10

Closed wgmyers closed 11 years ago

wgmyers commented 11 years ago

I appreciate that the following may well fall into the category of "won't fix" :) as the general case-insensitivity of PuzzleScript is clearly a feature.

I'm working on a new game involving different animals. There's a marker to show the player which animal they are currently allowed to move. An extract from my current legend is this:

D = Dog and Floor and Marker C = Cat and Floor and Marker M = Mouse and Floor and Marker d = Dog and Floor c = Cat and Floor m = Mouse and Floor

Sadly, this doesn't work, as 'm' and 'M' are treated the same, so, for example, on the cat and mouse level, where I want a controllable cat and uncontrollable mice, all my mice still end up with markers even if I've specified them with 'm'.

If legend characters were case-insensitive, it would be easier to create these levels directly, as I could use 'M' to denote 'Mouse and Floor and Marker' (controllable mouse) and 'm' to denote 'Mouse and Floor' (uncontrollable mouse).

Even if legends will always be case-insensitive, though, specifying eg both 'M' and 'm' in a legend ought to trigger some kind of 'Things Will Not Behave As You Expect' error message, since they won't.

Cheers,

Wayne

increpare commented 11 years ago

Hey there - thanks for the feedback/suggestion. The error system in the compiler still has some blind spots, and this is one of the more egregious ones. Or rather, it was. It's fixed now, in my local branch at least - cheers for the poke about it :)