DiegoM's Forum Posts

  • Just to clarify, headless browsers are libraries that let you write programs that behave like a normal internet browser. There should be at least one headless browser for the most popular server side languages, such as JavaScript (node.js) or Python.

    They have functionality such as waiting for a page to execute JavaScript after the initial request, before trying to query the content of a page, among other things.

    For the most part they are used for website testing, but they can have other uses like web scraping.

  • From your description I take that you are trying to do some web scraping and your problem is that the page you are trying to scrape has dynamically generated content which doesn't exist upon requesting a page, is that right?

    As far as I am aware this is not possible directly from a browser using AJAX, either through C3's plugin or directly through Javascript using an XMLHttpRequest.

    Don't think you will be able to do this directly from a C3 application.

    Any website that is providing such a service is first making a request to a remote server, then the server uses what is known as a headless browser to navigate to the required website, scrape the data it needs, and finally returns the result to the client.

  • When an instances is added as a child it keeps the relative position it had to the parent before being added. This means that although there is no built in method to add a child to a hierarchy at an image point, you can achieve the same effect by positioning an instance according to an image point and then adding it to the hierarchy using the Add Child action.

    As for Rope Style and Bar Style, I don't think those will be added into hierarchies, simply because they are very specific functionality and hierarchies are more a of a general purpose system.

    I doubt the pin behaviour will ever be deprecated because there are already tons of existing projects that use it, so we are pretty much forced to keep it around for backwards compatibility.

  • Try Construct 3

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

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

    Try this:

    1) Set a boolean variable to "true" indicating when a building has been entered. This can be a global if you only have one building or if you have many buildings try with an instance variable for each one.

    2) Set up a condition checking for the value of that variable, if it is "true" then do what ever needs to be done to show the inside of a building. If it is "false" then you do what needs to be done to show the outside of the building.

    3) Set up a condition block to set the variable back to "false". This one should only work, when you are on top of the door AND you press the appropriate keys (maybe the up arrow?) AND the variable itself has a value of "true". That way you can be absolutely sure it will only be turned to "false" at the right time.

    What ever you choose to do, you might run into the problem of entering and exiting very quickly out of the building as long as your character is on top of the door. So you might need some additional conditions to make sure that the actions to enter/exit the building are not executed in rapid succession.

    Hope that helps.

  • At the moment the brush editor is only meant to setup auto tiling brushes. You can't rotate tiles.

    Never thought about rotating tiles in the brush editor, I guess it would make it slightly more flexible. In the mean time the tileset should contain all the variations for each tile.

  • The tag you can give when you play a timeline is used to identify it later on with the the pause/resume and stop actions, as well as with the "on complete" trigger conditions that accept a tag.

    The tag you can give to keyframes is used for the keyframe reached trigger condition that accepts a tag, so you can do something when a specific keyframe is reached.

    They are not related.

    Can you explain how you were expecting the tagging to work?

  • In C3 redo is Ctrl + Y, no other shortcut.

    As far as I am aware Ctrl + Shift + Z to redo is an old convention that used to be popular, but no longer.

    Of course, Windows being old and with impressive retro compatibility, would support it. Newer software, not so much.

    construct.net/en/make-games/manuals/construct-3/interface/keyboard-shortcuts

  • I'd like to point out I haven't forgotten about this feature request. I has come up a few times in the past, but I haven't been able to get to it.

  • We don't have a method to include the regular icons C3 uses everywhere else in dropdown lists, we can only use text in each item. So in the case of dropdowns I decided to use an emogi, which is the next best thing.

    This is the real emogi 🌍 being used, notice the colour. I found that you can force the rendering of the monochrome variant, which is this one 🌍︎. (You might not be seeing any difference depending on how you are viewing this post)

    The problem with that is that is that it doesn't seem to work in OSX, I imagine it's the same in iOS.

    Windows shows the monochrome variant, so it's something.

    I'll have to try generating the emogi in a different way, maybe OSX and iOS only show it in a very specific way.

  • Use the Browser plugin.

    The QueryString expression returns the whole query string and the QueryParam expression can return the value of a given parameter in the query string.

    construct.net/en/make-games/manuals/construct-3/plugin-reference/browser

  • Try placing an image point in the opposite end of the sprite you are using as a line, and then use that position to place the following line.

  • Currently the MoveTo behaviour does not support curved paths.

  • Browsers block cross origin requests by default. So unless your game is hosted in the same domain as the API, any requests will be blocked. The easiest thing to do is add this header in the response the server gives for the resource.

    Access-Control-Allow-Origin: *
    

    That will let the client know that the server is allowing requests from ANY origin.

    If you want to be more specific, you can use the URL of the domain your game is hosted in.

    For example:

    Access-Control-Allow-Origin: https://my.game
    

    Using a URL instead of a * means that the server only allows request from that URL.

    developer.mozilla.org/en-US/docs/Web/HTTP/CORS

  • Have you tried requesting your data from your database as it exists now and then arrange it in the client as you need it? It looks like the example is doing pretty much what you described, all you need to do now is fill in the array with your own data.

    Instead of using the Load action to fill up the array from a file, you can use the Set XY action of an array to tell in which coordinates each value should go.

    To follow the format of the example dop2000 gave, you would use 3 actions to set all the values for each player.

    Set XY (0, 0, 1900)

    Set XY (0, 1, "Sam")

    Set XY (0, 2, 1)

    Those actions will set all the values in the first column...

    Set XY (1, 0, 120)

    Set XY (1, 1, "Pete")

    Set XY (1, 2, 2)

    Those actions will set all the values in the second column... and so on.

    Once the array has been filled up, the rest of the example should work just fine.

  • If you have any browser extensions, try disabling them one at a time and reload your project each time. Occasionally extensions can cause problems.