Animation folders do not create unique names

0 favourites
  • 4 posts
From the Asset Store
3 pixel charaters with over 8 animations each + animations with a gun
  • I'm making a fighting game and thus I have tons of animations per sprite. I've been organizing them into folders (ie High, Low), but (for example) putting "Attack" in both High and Low results in a "Animation name already taken" message - despite being in separate folders. The folder structure looks like this:

    High

        Attack

    Low

        Attack

    The above will not work as I cannot use the name Attack twice. I wouldn't mind if I had to type "High.Attack" or "High/Attack" in expressions if that is the only way to have unique names that reflect their folder structure.

    Edit:

    Windows 7 Home Premium 64-bit w/ SP1

    C2: 103.2 (64-bit)

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • AttackLow and AttackHi/AttackHigh should work and eliminate your problem. I have a lot of anims in my project most of them are named by number. 1,2,3,4 etc. The folder is the only original name. I have yet to have a problem with any of them. No Idea why I can use the same names in different folders and you can't , weird.

  • It's not that weird. When you call an animation in the Sprite's actions list it only asks for the animation name. If you have two animations in Hero sprite called Attack, which one is it supposed to pick?

    Individualizing names and coming up with conventions as MelVin suggested will only help you in the long run anyway.

    The folders in the sprite's animation list are there purely for organizational purposes and cleanliness. Makes it easier for you to find an animation.

    Instead what you should do is

    Movement

        Idle

        Walk

        Run

        Jump

    Attack

        Punch_High

        Punch_Low

        Kick_High

        Kick_Low

    so on and so forth.

    EDIT: Just realized you also had suggested having an animation be listed as High.Attack, Low.Attack, etc... I'd have to doublecheck but I don't think you can do it that way as the Sprite animation requests a string, and strings CAN have periods in them and all manner of other characters. Also, you can't very well just leave it without the quotes and turn it into a command because High.Attack will just look for the "High" object and try to find the property "Attack". I honestly don't see any good way around it that won't call for a rewrite of the way animations and variables are called, which seems more trouble than it's worth. The method currently used is perfectly fine, and in fact encourages clean code in my opinion. Just rethink your organization.

  • This is by design at the moment. It would be difficult to change because if we require animations in folders to use a different name, it would break all existing projects which use animations in folders!

    In the engine, animations are just a flat list, hence they have to have unique names regardless of their folder. The same goes for most things in Construct 2 actually: layouts, event sheets and objects must all use unique names regardless of their folder. The folders are just there to help you organise so you don't end up with one insane list of everything. I can't see a good way to change this easily right now, so I'm going to close as won't fix.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)