Descriptive Problem Summary:
No underscores in Interface button commands
Numbered Steps to Reproduce Problem:
Create button add command a verb with an underscore.
Code Snippet (if applicable) to Reproduce Problem:
http://files.byondhome.com/ATHK/Demo.zip
Expected Results:
To work as normal and call the verb
Actual Results:
Does not call the verb
Does the problem occur:
Every time? Or how often? - Everytime
In other games? - Indeed
In other user accounts? - N/A
On other computers? - Yes
When does the problem NOT occur? - When I don't use an underscore
Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.) - no idea
Workarounds: - Don't use an underscore
Not sure if not having an underscore was intentional or not, seems a bit silly that you can't use them.
Not a bug
| |||||||||||||
Jun 6 2012, 7:22 pm
|
|
You have to use a dash in interfaces.
|
Underscores in verb names are converted to spaces by default. You can use the 'set name' directive on the verb to override this.
|
Well that's a bit stupid ... it's not what I have actually called the verb in the DM file.
Will the interface button still connect to the verb if set name is used? I didn't think it would. |
The interface button is a shorthand for the command line. The name of the verb my_verb is "my verb" (and maybe also my-verb) for legacy reasons, but you can change this with "set name = my_verb".
|
Fair enough I understand that now ..
Still silly in my opinion ... mob/verb/my_verb() Obviously won't work so why should it in the interface button? Anyway not a HUGE deal and obviously not a bug. |
The notation is outdated and we can probably support both forms, but it's not a bug. The interface functions are client-side, and the client uses the verb name, which is usually the same as the function name, but not always ( which is what 'set name' does). Your example above is using function calls, which are server-side.
The problem stems from the fact that byond is built around this command line system that no one really uses anymore. |