citron2010's Forum Posts

  • This error keeps popping up more and more frequently for people - including myself. One thing I've noticed is that it happens more often when double-clicking the .c3p file in Windows Explorer. Instead, try launching C3, then using its Open - File menu.

  • I've just implemented an obvious workaround - if the game over screen's visible on resume, I just simulate the user clicking the arrow button which restarts the whole layout and clears the graphical glitch. Impact to the UX is minimal.

  • Deconstructing the project's going be too much work for the moment, so I tried a different approach.

    On resume, I loop through all the layers to check whether they're visible and if so, write that state to an array, make the layer invisible, then on the next tick, loop through the array and make any layers that were visible on resume visible again.

    This fixed issues 1 & 2 above, but I'm still getting this issue:

    If I flip the image vertically and squeeze it, it's clear that it's the first row from one of my sprite fonts:

    This is the sprite font in question:

    Anyone any ideas why this might be happening? (It's on resume on iOS after the game's been in the background for a while and always at the same "game over" stage of my game)? Any workarounds?

  • I’ve only disabled collisions between specific objects in event sheets but just checked the scripting reference for physics and see the equivalent: setCollisionsEnabled

    Failing that, any reason you can’t use event sheet actions to disable them?

  • i-Life Games is the name of your game, right?

    Click on the error and it should open the pods-debug.xconfig file

    Ignore the "// DO NOT MODIFY -- auto-generated by Apache Cordova" warning

    Remove the "#include "Pods/Target Support Files/Pods-i-Life/Pods-i-Life Games.debug.xcconfig" entry.

    Now try to build the project again.

    This happens to me when I export from C3 as an Xcode project but not if I export as a Cordova project and build the Xcode project myself using "cordova prepare" as per:

    construct.net/en/tutorials/building-mobile-apps-locally-21

    I do this for production so I can insert this plugin which hides iOS's home indicator bar:

    github.com/chipbell4/cordova-plugin-hide-home-indicator

    But for testing, to save a few clicks, it's easier for me to export as Xcode and delete that line from the pods-debug.xconfig file.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Just wanted to say that Show more information for -> Layers & Layouts is a godsend.

  • Keyboard - on any key pressed:

    Spritefont - append text - Keyboard.TypedKey

    Not ideal as:

    • You'd need someway to detect whether the SpriteFont should be accepting keyboard input or not (i.e. equivalent of a text entry box having focus)
    • Someway to handle cursor movement, delete, backspace, tab etc.
    • Word wrapping/resizing to fit
  • Pretty sure you can do this using Autohotkey - I use it to map a key to simulate a mouse click on C3's debugger's pause/play button.

  • Just an update on this in case anyone else runs into the same problem:

    I'm sure purchasing an IAP (from within the Android) app using a promo code DOESN'T trigger "on product owned" (like it does when using a card) but it does trigger "on purchase success". Neither trigger sets "has product" = TRUE though.

    Using the promo code in the Google Play Store app (or Apple App Store) works fine.

    As a workaround, I've swapped "on product owned" out for "on purchase success" and am now using that to determine whether the user has just bought the IAP or not.

    If the user already has the product (i.e. if they've redeemed a promo code in the Store or have previously bought it and have reinstalled) it looks like "has product" = TRUE only if "complete product registration" has successfully completed (Android), and for iOS, "restore product" has also been called. (Not totally related to this issue, but I've used the above info to change my app to automatically restore purchases for both Android and iOS.)

    Of course, testing this has been a pain - partly because the app (and each build for Android) needs to have been approved by Apple/Google before IAPs can be tested completely, but mostly because, once a user has the IAP, they can't test purchasing the IAP again. I now have 14 Google accounts!!!

  • I'm interested in doing this too but don't have much time at the moment to investigate, but I did find this thread:

    construct.net/en/forum/construct-3/how-do-i-8/save-image-chosen-user-file-174429

    In that example, the image is coming from a snapshot of a Drawing Canvas, but it shouldn't be too hard to swap that out for a file coming from the file chooser.

  • I see this error occasionally when double-clicking a c3p file, but it usually works second time around. It feels like C3 hasn't loaded completely so errors trying to load the project. Try opening C3 first, then use the "Open" button.

  • I'm not sure what you uploaded to itch.io, but it wouldn't be a .c3p file.

  • i will testing using all mobileIAP plugin method see which work, i already tried using has product in on start layout event but not working, maybe i will put it on every x second event

    Make sure you've registered the product first - from the manual:

    When making IAP events, the first thing you need to do is to complete the plugin's registration stage. You won't be able to make any purchases or check if a user owns a product until this is done.

  • I have a related issue where “on product owned” DOES’NT trigger when a promo code is used for an IAP so I’m also periodically checking “has product”. I wonder if you can do something similar as a working - i.e. ignore “on product owned” and just check “has product”.

    Also just noticed that you’re using “on purchase success” (not “in price owned”). I think you could still apply the above but also maybe try replacing “on purchase success” with “on product owned”?

  • Does "on product owned" trigger for you or do you check "has product" manually?