R0J0hound's Forum Posts

    There is pixel manipulation in javascript:

    http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#pixel-manipulation

    But it's not very fast from the tests I've seen.

    Ashley's reason for implementing polygon collisions instead is pixel collisions wouldn't be fast enough.

    http://www.scirra.com/forum/pixel-perfect-collision_topic44099_post275971.html#275971

  • I'd use a local variable:

    local var: orvar=0

    If "Player_Action" = window -> set orvar to 1

    If "Player_Action" = okno -> set orvar to 1

    if orvar = 1 -> do some stuff

    I you use a global variable instead of a local then you need to reset orvar to 0 before that block of events.

  • Ok, fixed it so that modes are not repeated. The other modes were rotated modes and modes with different refresh rates.

    On my computer only these modes are now listed:

    320 200

    320 240

    400 300

    512 384

    640 400

    640 480

    800 600

    1024 768

    1280 768

    1280 800

  • range(200) was purely arbitrary, my system had about 95 modes.

    I fixed the cap so that it will read all the modes.

    http://dl.dropbox.com/u/5426011/examples6/resolutions.cap

  • Well, contrary to what tulamide says, I don't know how how to do it, but I just learned from a few internet serches and about an hour of tinkering.

    Here is the example with the required pywin32 files.

    I also included the cursor example edited to use pywin32 instead of ctypes to reduce the amount of files needed.

    http://dl.dropbox.com/u/5426011/examples6/resolutions.zip

    In my example I used the name "resolutions" instead of "modelist" but they will act the same.

    To access the first mode:

    modelist[0]

    the second mode, and so on.

    modelist[1]

    modelist[2]

    To access the width of say the first mode do this:

    modelist[0][0]

    and the height:

    modelist[0][1]

  • Put "Monster" and "Health Bar" in a container. Then the positioning can be done with one event:

    + System: Always (every tick)

    -> healthBar: Set position to Monster.X, Monster.Top-16

    -> healthBar: Set width to Monster ('health')

  • The keys appear to be fine to me. Each name has the correct value. What language do you use with windows? If the language uses 2 bytes per letter then perhaps the listbox is causing the corruption?

    This cap doesn't use the listbox object:

    http://dl.dropbox.com/u/5426011/examples6/txtToHash.cap

    run in debug mode to see the populated hashtable.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • It is synchronizing because Weapon and reloading are not paired.

    The sub-event:

    + reloading: animation "default" finished

    is picking that one reloading object and all the Weapons with an ammo of 0.

    To fix you need to pick the Weapon that you want paired with reloading. You could use a variable with UID or since it appears that your weapons don't move you can pick the Weapon that is in the same location as reloading.

    + Weapon: Value 'ammo' Equal to 0

       + System: Trigger once

       -> System: Create object reloading on layer 1 at (Weapon.x, Weapon.y)

       + reloading: Animation "Default" finished

       + Weapon: X Equal to reloading.X

       + Weapon: Y Equal to reloading.Y

       -> reloading: Destroy

       -> Weapon: Set 'ammo' to 3

  • Look in the source files folder to find "ConstructSDK.rc". The express version doesn't include the resource view, but the file is just a text file so you can edit it by right clicking on it and clicking "view source".

  • Visual C++ 2008 Express Edition is fine, you could also use the 2005 and 2010 versions.

    What is wrong with the toolbar? If it's the name listed that you want to change you can right click and rename it.

    The only real issue is the 2 errors. The errors are from using the express editions, which don't come with the MFC/ATL libraries. To fix it you'll have to download the windows driver kit.

    Here are two topics on the subject that should help:

    http://www.scirra.com/forum/visual-c-express_topic39215.html

    http://www.scirra.com/forum/interested-in-working-on-construct-classic_topic42474_page4.html

    cheers

  • The range of the bullet behavior can't be reset. A workaround would be to create a separate object with the bullet behavior and position the sprite to the bullet object.

  • Families are useful in this situation. Use three families "enemy", "friendly" and a third family like "Blue" that includes both the "enemy" and "friendly" families.

    If you pick a single "Blue" instance you can find if the instance is in "enemy" or "friendly" with:

    + Enemy: Unique ID is Blue.UID

    or

    + Friendly: Unique ID is Blue.UID

    In the same way, you can find if the instance is a particular object type with:

    + Sprite: Unique ID is Blue.UID

    For turns based on a character's speed, a way to do it is for each object to have a variable that increases with the character's speed stat. When the variable reaches a certain value the character is given a number to queue it, the first will get 1, the second 2 and so on. Then each character is picked by that number for the corresponding turn, and at the end of the turn they will start the process over.

    Hope that makes some sense, I tend to be not very good with explanations sometimes.

    Here is an example that shows some of these ideas:

    http://dl.dropbox.com/u/5426011/examples6/turnBased.cap

    Feel free to use it however you like.

  • Rename 3dobject so that it's name doesn't start with a number. Python doesn't work with names that start with numbers.

  • Yes, the needed files should be the same.

  • In short search and replace uses regular expressions for the search string. Feature? Which is cool except when searching for special characters like '?'.

    find("123?", "?") causes the preview to be grey, because "?" is not a valid regular expression. It is fixed by using "\?" instead:

    find("123?", "\?")

    I think that search and replace should be just simple searches and replaces, which is what's expected when using them.

    This site:

    http://80.68.89.23/2006/Jan/20/escape/

    has a solution to escape all the special characters.