Skip to content

Identify duplicated expansion parameters with a special syntax #57

@ClementSparrow

Description

@ClementSparrow

In the two syntaxes currently existing that introduce expansion contexts (see #56), add something to:

  1. Distinguish the parameters of the expansion context that have the same name but should be expanded independently (for the identifier-based syntax only).
  2. Allow things that will be expanded (object names, sprite transforms) to specify which one of the similarly-named parameters they refer to (including when using mappings).
  3. Allow things that will be expanded to specify that they use a tag class or property that should not be expanded despite having the same name than one of the expansion parameters.
  4. Only trigger the error about duplicated parameters when they are not disambiguated with the syntax from point 2.

The goal is:

  1. To extend the possible usages of the expansion mechanism.
  2. To avoid declaring synonyms of tag classes and properties, or duplicating mappings, just for the purpose of avoid conflicts with expansion parameters.
  3. To make the game's code more readable, less ambiguous.
  4. To allow identifier-based expansion to define that two different tags should have the same value when expanded or that one should be a mapping of the other.
  5. To allow distinguishing between mappings applying to the rule's direction and those applying to the directions rule parameter.

Metadata

Metadata

Assignees

No one assigned

    Labels

    expansionany expansion mechanismfeatureNew feature or requesthelp wantedExtra attention is neededmappingsAnything that concerns mappingsquestionFurther information is requestedsprite manipulationscopying and transforming spritessyntax/languageConcerns the language or its syntax

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions