lionz's Forum Posts

  • You do not have permission to view this post

  • The first one just because the second way will drive you crazy

  • I think you can't access the variable in the way that you're describing. Based on the design of the game and how letter are used maybe there is a better way to do it in general though. For now you can just use condition, if family.type=A then set var to family.A. You could use a function where you send through the type as a parameter then apply as necessary.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • If that is the important column which determines item order then put this in the first column which is used for sorting.

  • If you have one object type Character you don't need to use a Family. In general though if i'm understanding what you want correctly, you can access through some condition : if Family.letter=A, set var to family.A

  • You can't with the default action but why are you doing it? Maybe there is a better way to do what you are trying to do.

  • Think I answered this one already, for each (ordered) by rank : move to top/bottom of layer

  • Of course it depends on the exact design of the game and how it works but for example on start of turn you can predetermine the enemy actions then have the player do theirs and add each action to a row as such :

    1. enemy1 > block > target=enemy1

    2. player1 > magic > target=enemy1

    then you run the actions in turn, popping the top of the array each time so you are always running row 0.

    1. run block function on family instance enemy1(updates variable that they are blocking)

    2. run magic function on family instance enemy1(apply damage to enemy1, show magic related UI etc)

  • See above I forgot to mention that you don't need to import from an outside source. You can create an array file in Construct then load it into the array and use the logic I mentioned where the row is the wave number. It's on the project bar at the bottom create array file and then load it into an array on start of layout.

  • I should've mentioned you don't even need to import it, you can create the array file in Construct and load it into the array if you want a table of stats.

  • This looks fine. You could add all the stats to CSV or JSON and import into an array and use the wave number as the array row number to make the event smaller (i.e. set TimeMin to array.at(CurrentWave,1), set TimeMax to array.at(Currentwave,2) but there is no downside really to applying the actions like you have them at the moment.

  • As you mentioned in the post, this way of making it will get overblown when you add detail and many things happening at once with many instances. You need more control over the gameplay and since it's JRPG I would create a turn system in an array. For each action you can add the person's turn to a new row and then run each row in order and pop off the top row when it's done. This also provides visibility of what's happening. Within the row you can include things like the target UID, even the damage calculated so you can see it before it's acted out.

  • Storing in the array as you described seems like the way. If the focus is on operators then I would keep it simple, have a sum of two numbers and the child chooses the operator in the middle. Or alternatively have the operator and then child taps 2 numbers that will go before and after. I don't think giving so many options to make 10 is fun or educational.

  • I would anticipate some logic such as when you open the inventory, spawn the icon that is array.at(0) in slot 1 and array.at(1) in slot 2 etc. That way it is always matching what is in the array. You need to create logic to keep the visual inventory matching what's stored in the array.

  • When calling the function with the variable it looks fine but when you set up the table I think that's wrong as you will only have a shuffled 1-7 when you need 1-300. The length should be 300 (or qcount) and offset 1.

    To pick only 7 questions you do it at the function call level with the incrementing variable. You can view the permutation table in debug view, it should be a shuffled output of 300 values, the first 7 of which become the questions using the function call and variable.