DiegoM's Recent Forum Activity

  • I saw this a while ago and thought that it wasn't supported, but it turns out it is. It's just not immediately obvious.

    Here is a small project showing how to do it.

    dropbox.com/s/rpjdia0aj3y87o7/AwaitCallFunction.c3p

    The project has 4 buttons showing what is the execution flow when using different combinations of asynchronous functions, await and wait for previous actions to complete.

    For this example I use a function which only uses the Wait action, just to demonstrate that something is being waited for.

    Button 1

    The first button will do all the things. The script block uses

    await runtime.callFunction
    

    It works because the Asynchronous checkbox was ticked.

    You can see there is a short wait between the text changing. An alert is shown afterwards because there is a wait for previous actions to complete after the script block, which prevents execution of the event sheet from continuing before any previous asynchronous work is complete.

    Button 2

    The second button does the same as the first, but it doesn't use wait for previous actions to complete. So the alert is shown immediately after the script block. After closing the alert box, the short wait between the text changing is still present though, this is because

    await runtime.callFunction
    

    is still stopping execution in the scope of the script block.

    Button 3

    This one just shows what happens when you don't wait for anything. The alert is shown instantly and the text doesn't wait to change. This one is just to show what you don't want to do when working with asynchronous functions.

    Button 4

    This is the same as the first, but calls a function declared in a script.

    eleanorjmorel

    I think that covers everything. Not really sure what you need to do, hopefully one of those is what you are looking for.

  • I haven't tried it out, but I am wondering what is that base64 encoded data?

    I tried looking at the json on on it's own in Notepad++ and it struggled to show anything. Taking several seconds to open the file and then scrolling through it as sluggishly as you could possibly scroll.

    I am thinking the data is an image because 16 megabytes of raw text would be a lot of text.

    I know it is tempting to just cram an image in text format in a json file and then just load the json. But in this case maybe it is better to hold an identifier in the json and then use that to load the image through the browser's normal methods.

  • I did a search for net::ERR_CACHE_WRITE_FAILURE and it seems to be related with the browser not being able to cache very large files.

    Is your server gzipping and minifying the json? If the file is being served as is, that might help.

    You can also try an incognito mode tab to see if it works there.

  • No plans. There are a few issues with fully supporting scene graph transformation on form controls.

    The main problem is that form controls don't rotate, so even if we added the support now, the immediate caveat is that they would not be affected by rotation of a parent, which is a pretty big caveat.

    I am not quite sure how much work would be to add support for form controls rotation, but like everything else, I am sure it would be more difficult than it sounds.

    I imagine the implementation would somehow involve CSS transformations (because it is the only way to apply rotation and scaling to DOM elements), but that is as far as I can picture. It seems like it is possible, just not a pressing issue.

  • These are the plugins that currently support scene graph transformations:

    • Drawing canvas
    • Tiled background
    • Text
    • SVG picture
    • Sprite font
    • Sprite
    • Shadow light
    • Particles
    • 9 patch
    • 3d shape

    IKnowMyStory

    If you think there is a problem please file an issue in our tracker, and make sure to follow the guidelines so we can sort out the problem as quickly as possible.

    github.com/Scirra/Construct-3-bugs/issues

  • Here is an example project showing how to load and use the SDK.

    dropbox.com/s/fv29dv17pelushl/LoadScriptFromCDN.c3p

    The only way I got it to work was by using a script tag with the url of the SDK. When the script is loaded and executed it creates the global variable Realm which you can use to do whatever it is supposed to do.

    The project uses two scripts. The first scriptLoad.js defines the function that loads a script tag with a provided URL. It has it's Purpose property set to (not set). This means C3 doesn't do anything with it that you don't explicitly tell it to.

    The other script, importForEvents.js has it's Purpose property set to Import for events. This one just imports the first script so the function to load a script tag is available in event sheets.

    Since the loading is asynchronous, the load function returns a promise that will resolve to true or false depending on wether loading was successfull or not. So make sure to always check for that before using the global Realm property.

    The example only prints to console, so press F12 to bring up dev tools for the preview window to see if it is working or not.

  • fredriksthlm

    Personally I still can't get the "spoof location" to work. I'm not sure how this DebugGeography should be implemented, I guess withing the RequestInfoUpdate call (?). But regardless if I set spoof location to "Outside the EU" in the plugin properties, the plugin still validates the condition "Is in EEA or unknown" to be true. Also the ConsentStatus is still REQUIRED. So the spoof location is not working properly in my tests at least. This is just a debug/test thing, so not needed for production apps. But if you decide to include it in your plugin I guess it should work :)

    Is this in Android or iOS? I have noticed a few things that don't work quite right in iOS. The first is that in iOS 14 or greater, DebugGeography will not work in a real device. I wrote a little bit about that on my update notes for r258 at the end of the first post in the topic.

    The other thing I noticed is that in iOS, if the device says is outside the EEA, the consent status will still be required if the ATT dialog hasn't been shown yet, and I think that is the User Messaging Platform SDK saying that, so I don't think that will be sorted any time soon.

  • Tjums

    Is it on purpose you haven't updated the Plugin Reference "Mobile Advert" since april?

    Yes.

    The manual will be updated once the feature reaches a stable release.

  • Since in some circumstancus you are not allowed by Google by any means to show it (if the app exist in a featured program for users without ads for example)

    That makes sense. You would need to make a special build of your game for that case, wouldn't you? And it would be much easier to just change a single value rather than strip the whole plugin.

    The old plugin had the options to show the consent dialog for EU only, Always and Never. EU only is what it does now, which is the smart behavior where it figures out if it needs to show it or not. I don't think Always is needed anymore though, why would you want to force the consent dialog if you don't need to?

    So I think that just a toggle to choose whether to show it on start up or not is all that is needed.

  • fredriksthlm

    I test this on the simulator and on a device. So far they behave the same.

    I just realized that the IDFA explainer message is never shown. That is ok if you are in the EEA, but I just tried to spoof the location as outside the EEA and it still didn't show it.

    Right now I don't have too many ideas as to what might be wrong, i'll have to keep looking at it.

  • boulerzzz

    DiegoM why does the ATT prompt show automatically on start? We should be able to control the timing ourselves with the "request IDFA" action.

    In the process of updating the plugin I just took a look at the documentation of Admob Plus, which is the cordova plugin we are using to handle all of this and there I saw the request for tracking authorization made before showing the EU consent form, because so many things were different, I assumed that is how it should work.

    The next update will have the RequestIDFA do the same as before, so you can control when the dialog is shown.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • fredriksthlm

    1. When opening the app the ATT prompt shows before the Consent/IDFA explainer. This is incorrect behaviour. The Funding choice message should be shown before.

    I did this like the documentation for Admob Plus said and didn't think twice about it, seems like an ok workflow if you ask me. After looking a little bit closer at the Funding Choices documentation here... it seems like you are correct and the iOS dialog should come afterwards the EU consent form.

    As for the other issues, I can't comment on them too much really. When I try it out it remembers the settings. The only thing I can think of right now, is that the Test Mode checkbox might still be on, that would cause the consent dialog to be shown all the time.

DiegoM's avatar

DiegoM

Member since 24 Apr, 2015

Twitter
DiegoM has 1,382,791 followers

Trophy Case

  • 9-Year Club
  • Jupiter Mission Supports Gordon's mission to Jupiter
  • Forum Contributor Made 100 posts in the forums
  • Forum Patron Made 500 posts in the forums
  • Regular Visitor Visited Construct.net 7 days in a row
  • RTFM Read the fabulous manual
  • Email Verified

Progress

15/44
How to earn trophies

Blogs