VikasSanstha's Forum Posts

  • I learned so much doing this. Very happy!

  • Thanks very much to both of you. I got it working they way you see here. A bit of a hybrid, but it's using the click count, so that's a great new tool for me to have learned.

    Since the fundamental change I want to make is so simple (replacing some numbers), I shifted away from using a function for that.

    I'm making a simple arithmetic engine for my students, for visualization. They choose a first number (from a row with ten number choices), an operator and a second number, and it produces the result. This behavior, clicking an icon over and over again, is to allow them to change the sets of ten number choices for the first and second numbers in the equation. They repeatedly click a button and it presents them with new sets of ten numbers to use in the engine.

  • Hello friends,

    I have a sprite object, and each time I click on it I want it to call a function, or more specifically to cycle through a series of functions that all have the same name, with an increasing number on the end. I'm using C3 full version with built-in functions.

    SCENARIO

    1. I have a series of functions - funct_01, funct_02, etc., up to funct_10

    2. There is a sprite which is the trigger object. The first time I click on it, it calls funct_01.

    3. I would like each successive click to call the next function - funct_02, then funct__03, etc.

    4. After funct_10 it would loop back to funct_01 and continue the cycle.

    I know this is a specific case, but I am also interested to learn about this behavior in general. Say I wanted to click a text object over and over, and have it do totally different things each time (say, first click spawned an object, next click changed the font color, next click destroyed the text). I don't understand the basic concept.

    Many thanks for any assistance.

  • The user chooses numbers and operators, and the answer can be spoken. Everything works, but I can't understand how to account for negative answers. Basically when answer.text is less than zero, it should speak "Negative" before the answer, but otherwise follow the rule you see here, which is working fine. Many thanks for any help.

  • You do not have permission to view this post

  • TextUID is indeed a local variable.

    Use the system action: "Set global/local variable value".

    Thanks, I got it working, I was confusing local and instance variables.

  • Two answers, two different methods :

    Making use of the Pick All system condition:

    Making use of the Functions feature:

    Same result in the end.

    Thank you, this is working. I don't understand how to do the second example, but I got the first one working.

    Hello friends, here is a simple c3p file

    dropbox.com/s/jxrfoz2qg89ow73/Outline%20only%20one.c3p

    There is a text box, and an instance of it. I am using the BetterOutline effect, and I want to be able to click on either piece of text, and have only the one I just clicked on show the outline. As it is they both stay outlined.

    Many thanks for any assistance.

    Tagged:

  • Hello friends, here is a simple c3p file

    dropbox.com/s/jxrfoz2qg89ow73/Outline%20only%20one.c3p

    There is a text box, and an instance of it. I am using the BetterOutline effect, and I want to be able to click on either piece of text, and have only the one I just clicked on show the outline. As it is they both stay outlined.

    Many thanks for any assistance.

  • I think it makes sense to keep the project name separate. Some people will want to set them separately. For example you might have "My game (variant 1).c3p" and "My game (variant 2).c3p" for testing or experimentation purposes, and you want both to have the project name "My game". If the filename automatically sets the project name, it makes it impossible to do that - the file system will prevent you having two projects with the same name, because you can't have two files with the same name.

    Thanks for the personal reply Ashley, I really appreciate it coming from the founder, and it's nice to meet you. I think the negatives considerably outweigh the positives. It makes file management very difficult. I can't think of other sophisticated software (which Construct certainly is) that operates this way. It should be an option in any case. Let the user decide if they would like to work in a more traditional fashion. Any time we make creative projects, be it in Premiere or InDesign or Reason, the file name is the project. It's natural and normal and efficient and logical.

    I have hundreds of js files that I create and manage in VS Code, all declarations for content for educational games. I can't imagine if each of them had a separate name for the "project" and the "file," and then I also couldn't see the file name anywhere. It would be a nightmare to manage, and it's what I've come up against in C3.

    In the example you give they both have the same MyGame name in the filename anyway, followed by a version number. I don't think many people will call their game "Jungle Adventure v1.c3p" and then make version 2 and not call it "Jungle Adventure v2.c3p".

    If possible, please consider including the display of the filename somewhere if nothing else. It makes it very hard to manage large numbers of files. It's always best for users to have direct control over and awareness of their files. If the filename were visible then the issue of whether to derive the project name from the filename would be a moot point really. Users who prefer to focus on the file name would just do that and ignore the project name. The project name has no relevance when managing the actual files on disk though, which is what makes file management so difficult. You have to syncronize everything, and track changes, and then you can't even see the filename when you're working in the editor.

    Please don't get me wrong, I absolutely love Construct. It's genius, and hats off to you personally, just IMO this is a thorn in an otherwise brilliant product, and I haven't encountered many other thorns, which is saying a lot for such a robust product.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I understand you are talking about c3p files, and I agree sometimes I need to see the file name, usually when I have two versions of the same project open.

    However, in C3 you can also save projects as a folder or to a cloud service. Displaying a file name in these cases will be useless.

    No, no cloud, only local. It's a nightmare trying to manage a large number of files. A huge amount of unecessary time and effort for something that should be simple. Not just not being able to see the file name, but the fact that the project name is a separate entity unconnected to the file name drives me crazy. This is a terrible way to work, and I can't think of any other software of the caliber of Construct that forces users to work this way.

  • As much as I love Construct and consider it to be a triumph of usability and UI design, I find it shocking and bewildering that the actual file name of the project you are working on is not shown to the user anywhere, unless I am missing something. The only place it seems to appear is when you have multiple projects open, that have no project name, then it is appended.

    As a UI connoisseur I have to say this is a failure of the most fundamental sort.

    In general the approach to project naming is a mess. There should be two additional options in the settings. (1) Show file name. One obvious place would be at the very top of the Project Bar above the Project Name, and, more importantly (2) Use file name as project name.

    Having the Project Name be different than the File Name is useless to begin with in my opinion, and only invites confusion. I have 325 Construct projects, alot of it just experimentation and learning, but so be it. The only option to have cohesiveness between the file names and project names is to manually evaluate all 325 projects, and then manually rename all of the files and projects, and then any time a change is made to one or the other, it has to be tracked and then accounted for. This is a terrible UX and workflow/productivity design IMO.

  • Thanks Biscotto, this is very helpful. I like the use of else and the loop index and creation cycle. Those are all techniques I am not familiar with so it's exciting to learn something new.

  • > Thanks very much. So in this approach are all the objects instances or discreet objects? Seems like they have to be separate objects. If they're instances the list positions is the same for all, when I change it for one they all change.

    No, that's the whole point of instance variables - they can be set separately for different instances of the same object.

    Hi Mike, I have it working except for the failing part, if you have a chance to take a look at the c3p. It fails every time, even you win, if that makes any sense. Many thanks. shorturl.at/gvI13

  • Do you need to check if the sequence is correct at each click, or is the check done once at the end of the player's sequence selection?

    Anyway, reading your question, I had an idea that maybe could work, and it would avoid you to use a lot of control variables or whatever:

    When you create text isntances, do you do it using its correct order and just arrange them in random order inside the screen? If yes, you could take advantage of the UIDs or IIDs of the instances that will surely be generated in incremental order.

    So, for example, if the IID of the second instances clicked is not equal to the IID of the first instances clicked +1, then the selection sequence was not done correctly.

    I would like to learn how to do it in both cases (go all the wya through whether you're right or worng, and also get stopped as soon as you're wrong). Also the objects may not be text, they could be sprites. The IID approach is what I tried instinctively but I just couldn't get it to work. I will try what you've suggested. Thanks.