R0J0hound's Forum Posts

  • When I click on the blue rectangle to take me back to Layout 1, it goes back to Layout 1 but the objects retain the positions made in Layout 2. The positions in Layout 2 were only supposed to be temporary.

    The objects are global so they keep the same position from layout to layout. You could try to reload when you go to layout 1.

    When I click on the black rectangle to load the save, it's supposed to start on Layout 1, but it jumps to Layout 2. The only thing that goes right is that it saves the correct positions, it's just that it puts them in the wrong layout! :-(

    This makes solution 1 not work, so I would say this would be a good situation to do your own save/load system.

    oes anyone know what the file type of the save file is? I'm on XP and the file type doesn't show, it just says "file" under file type.

    It's a Construct game state file, only readable by the game that made it.

    oes anyone know which plugins don't work with the Save & Load function? I haven't encountered any yet but I read that some plugins don't Save & Load.

    Only the sine behavior comes to mind.

    There are examples elsewhere on the forum of custom save and load, the S plugin can be helpful in this aspect.

    Here is a simple save/load that will work for your example:

    http://dl.dropbox.com/u/5426011/examples15/simple_save_load.cap

  • Cool effect Pode,

    I used Blender and your example to make this:

    http://dl.dropbox.com/u/5426011/examples15/marble_monkey.capx

    Here is the .blend file I used to make it:

    http://dl.dropbox.com/u/5426011/examples15/normal_map.blend

  • Use a global variable to store the list of files in the directory.

    Then set the array size to be the the same as the number of files.

    Then the only loop will be "for each element".

    Start of layout

    +set var to File.FileList("c:\matt\cap\images")

    +Array: set size to len(global('var')), 1, 1

    for each element

        Create Object Text on Layer 1 at (Array.CurrentX * 30 + 20), (50)

        Set text to global('var') at Array.CurrentX

    global('var') at Array.CurrentX

    is a valid expression since File.FileList() is an array data type.

  • Here is an example that filters through a Chinese menu, including some words and excluding others:

    http://dl.dropbox.com/u/5426011/examples15/find.capx

    If you want to use actual tags you could setup the array like this:

    Array.At(n,0) would be the sting

    Array.At(n,1) would be a comma separated list of the tags.

    The use find on the tags list instead of the sentence.

  • The main roadblock you will encounter is you can't add frames at runtime. But it's key to the design and is probably the first thing you should tackle. Here are 3 different methods to do it:

    Method #1

    You can use the tiledBackground object with power of two sized textures and the image offset action to display only a subset of the texture.

    Here is an example:

    http://www.scirra.com/forum/using-tiled-background-for-image-fonts_topic41196_post253858.html#253858

    The disadvantage of this method is vram usage will be very high if you load a different tileset texture. Loaded textures are unique for each tiled background, so the vram used would be vram_the_texture_uses*number_of_tile_objects.

    Method#2

    Another method would be to keep using sprites with one big frame with all the textures and select the sub-image of the texture with distort maps. When you load another texture all the tiles will be updated since they all reference the same texture.

    Here is an example:

    http://www.scirra.com/forum/rotating-sprites-from-a-spritesheet_topic56037_post349803.html#349803

    The pros of this method is only the vram of one texture is used.

    The con is you still have to deal with all the tiles on one image which could prove laborious to update a single tile.

    Method#3

    Use a different instance of a tiledBG object for each tile. Adding another tile at runtime is as simple as creating another instance and loading the texture.   Keeping the actual tiles as sprites you can select the texture by giving it the texture of one of the tiledBG instances using this plugin http://www.scirra.com/forum/plugin-texture-setter_topic43143.html.

    Here is an example:

    http://dl.dropbox.com/u/5426011/examples15/tiles_TextureSetter.zip

  • You can convert it to 0-360 like so:

    (Sprite.Bullet.AngleOfMotion + 360) % 360

  • Are you trying to do a timer that does something after a tenth of a second? Like newt said use a variable and add dt to it every tick.

    Say you call your variable "timer"; don't do a condition like this to see when a tenth of a second has passed.

    timer = 0.1

    "timer" will almost never be exactly 0.1, instead use ">=".

    timer >= 0.1

    and add a "trigger once" condition after it.

  • You could do something like this:

    every tick

       set oldval to var

       set var to Choose("1","2","3")

    while

    var=oldval

       set var to Choose("1","2","3")

    You could also do the following:

    variable choices="1,2,3,"

    variable value="1"

    set value to tokenat(replace(choices, value & ",", ""),int(random(tokencount(choices,",")-2)),",")

  • The process is the same as making any other game. For a general start add a player sprite and give it the 8direction behavior and then add other graphics for the level graphics. Anything you don't want the player to walk over give the solid behavior.

    For specific aspects of zelda you want to do, this tutorial list may be useful:

    http://www.scirra.com/forum/topic45416.html

  • It works here. Use the "Is Boolean instance variable set" condition which is next to the "Compare instance variable" condition.

  • After re-reading your initial question you may also be able to use a mod tracker to do it.

  • http://dl.dropbox.com/u/5426011/examples15/average_values.capx

    You can tweak how you define what side by side by changing the "select" sprite or tweaking event 4.

    If you want to have only touching sprites count as side by side then make "select" have the same image as "sprite". Or if you want to do a distance calculation instead change event 4 to:

    Pick all sprite

    For each sprite

    distance(select.x, select.y, sprite.x, sprite.y) <= 100

    If you can pick an object you can get it's UID. In the case of your question you could save the uid of the object to a global var, check for overlapping at offset, and then use an inverted pick by uid to make sure you don't pick the original. That may not work in this situation of checking for objects of the same type, so you may want to use a detector object as I have in the example.

  • If you download Construct Classic it has a Text to Speech plugin included.

    Using it's "Speak text" action you can make it say whatever you want.

    Here is a reference of advanced things you can make it do:

    http://msdn.microsoft.com/en-us/library/ms717077%28v=vs.85%29.aspx

    You can then record it to a sound file with a program such as Audacity:

    http://audacity.sourceforge.net/help/faq_i18n?s=recording&i=streaming

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • You need to use the imagelist object with the list object to have images. It appears to work with bmp or ico files.

    Here is a working example to get you started:

    http://dl.dropbox.com/u/5426011/examples15/imagelist.cap