XpMonster's Forum Posts

  • If you're creating RPG game I suggest you get familiar with math (you will need to come up with formulas), functions, Arrays, Dictionaries, XML & etc. :)

    That's a lot of work with data.

    I could give you away the answer, but you need to understand what you're getting into first.

    Find a way to create infinite level up using no more than 1 event which calls 1 function. If you understand this you will likely understand the rest as well.

  • Well you have action that calls your "checkQuestion" function somewhere in the code, right?

    Put "wait for previous action to complete" after that.

    Unless you have no actions after the call that is.

  • You can't.

    If you want to use webfonts for your buttons & text inputs then I suggest you write your own version of these objects.

    You could also purchase plugin to simplify your work - aekiro.itch.io/proui

    P.S. Truth be told I wish Construct had proper support for menus.

  • Construct 3 & Construct 2 & even Construct Classic can handle enough for most 2D games.

    You're doing something wrong, because the amount of skills & levels hardly influences the amount of events you need.

  • **Little clarification

    1. SAVE RESULT. Set XY value for temporary Array:

    X - ID variable

    Y - 0

    Set: Answer variable

    2. SAVE TIMER. Set XY value for temporary Array:

    X - ID variable

    Y - 1

    Set: Timer.TotalTime

  • Then just create constant string variable (e.g "tab") and write there as many invisible spaces as you want.

    Use this variable then instead of writing spaces manually.

    "Name" & tab & "Address" & tab & "Phone"

  • 1. Add temporary Array for your quiz. At the start of your quiz, set size for this Array:

    X - set to how many question you have in the current quiz

    Y - set to how many variables you want your question to store. Let's say you only need 2: Result & Timer. Y would be equal to 2 then.

    Your first Question would be equal to 0, second to 1, third to 2 and etc.

    2. Add static local integer variable (ID) which saves current index. 0 by default.

    As your whole quiz starts from the beginning, variable must be set to 0.

    It should be in the same Group as your other functions for the quiz which should have access to it.

    You could use global integer variable for that too. Whatever you find appropriate.

    3. Add local boolean variable (Answer) inside your "checkQuestion" function. If player answered correctly it would set there to True (1).

    4. In the very end of your "checkQuestion" function, but before Timer has stopped:

    1. SAVE RESULT. Set XY value for temporary Array:

    X - ID variable

    Y - Answer variable

    2. SAVE TIMER. Set XY value for temporary Array:

    X - ID variable

    Y - Timer.TotalTime

    3. Add 1 to ID variable by the end of your "checkQuestion" function.

    I hope I explained it well enough -_-

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I see the problem now.

    "checkQuestion" uses "wait" type of action (Request Project File with AJAX) which can't be done in one-tick using standard synchronous function. Your function only worked until AJAX's request so "Stop" never happened.

    Make "checkQuestion" asynchronous and everything should work. Also put "Wait for previous actions to complete" after you call "checkQuestion".

  • use expression: newline

  • You could store them in the Array based on index (order) of each question.

    If you only need to show timer for 1 question then you should add local variable (static) instead.

  • Functions happen.

    They won't work properly if there is need to run more than one in one tick.

  • Mind showing screenshot of your code?

    You can send it to my Discord, if you like - XpMonster#2531

  • I didn't meant it as condition, more like "go back to 1"

    You wrote that you start timer in "setquestion" and stop it in "checkquestion".

    So you need to start timer ONLY in "setquestion" and stop it ONLY in "checkquestion".

  • setquestion

    You only need 2 actions for Timer.

  • 1. Start Timer (Once) for X time with tag "any".

    2. Stop Timer with tag "any".

    3. Repeat from 1