Ashley's Forum Posts

  • Try the Fade behavior maybe?

    Are you creating a text object in that event? If no text objects exist, actions on the object have no effect.

    Other than that, try posting a .cap showing what you mean.

  • Really? I'm sure I tested this to make sure the box was around the visible object, not where it would be at Z=0. Can you upload a .cap showing this?

  • Looks like a bug, submit a bug report.

  • Yeah, possibly. I'll see about having an option to bundle the necessary DLLs, but it could be 6-7mb for all required components.

    I think it's the red cross icon that freaks people out. Maybe I should change it to the 'i' information icon. Either way I'll definitely be getting rid of the D3DX requirement in Construct 2, it's annoying and text rendering is broken anyway. I'll just rewrite all the stuff it does myself

  • Do what the messagebox says Install the August 2008 DirectX update or newer, and it will start working.

    It's nothing to do with DirectX 8. It needs the August 2008 DirectX 9 update.

    I've tried re-wording the error message about 3 times now and people still seem to get insanely confused about going to the Microsoft website and updating DirectX. If you've got any suggestions on how to better word this so people don't explode when they see it, I'm all ears

  • I don't see why you need distort maps for a scrolling marquee... it sounds like you can do that just moving the objects around.

    The top left of the object box is like the top left corner of the selection box in the layout editor - it rotates with the object. The bounding box never rotates, it's an unrotated box big enough to fit in the whole rotated object. Still, if the current calculation works absolutely fine... why are you asking?

    Also I'd hope you use a function instead of a macro for that calculation!

  • This is fixed in the next build, a bug report for it was submitted and closed.

  • Exactly that.

  • It's probably not possible with render targets, however - but some newer graphics cards support non-power-of-two textures anyway. There are other problems with splitting textures, such as slowing down rendering, and also image quality: due to floating point positioning, it's difficult to stitch the two sections together without a visible seam on the join appearing in many circumstances.

  • 1. Eh, it'd be difficult, you'd need changes to the Sprite object really. What do you want to do?

    2. There is no "left corner". Do you mean the top left corner or bottom left corner? Of the sprite box or the bounding box? What's wrong with the code you posted anyway?

    3. See the following functions in VRuntime:

    	virtual bool			GetImagePoint(CRunObject* obj, int number, POINTF& pt) = 0;
    	virtual bool			GetImagePoint(CRunObject* obj, const char* pointName, POINTF& pt) = 0;[/code:2d3trdro]
    
    4.  object->info.curAnim->curFrame or similar.  Check curAnim is not NULL.  You might need a call to UpdateAnimation or similar after it.  Check the Sprite object source to see how it does it.
    
    5.  An unused leftover from a failed idea.
  • No, sorry, there's no way to have | as an option... I think it's called the 'pipe' character though.

  • Don't bother with fast triggers, they were written to support an algorithmically efficient version of the 'on loop' conditions which didn't slow down when other unrelated 'on loop' conditions are present. To achieve this they cut a lot of corners ranging from not performing object picking to ignoring the first parameter... essentially, they're not useful for plugins.

    To trigger a condition pass the index of the condition. ADDCND() in the ACE table adds the condition to a list, so it's the zero-based condition you have in your ACE table.

    Triggering a condition does what you said pretty much, it executes all events with the trigger condition in top-to-bottom order in the event sheet immediately testing all conditions and running all actions and subevents, all done immediately within the function. As you'd expect if the trigger routine (cMyCondition) returns false, that trigger does not run. Note in your example not all control paths return a value, so you probably want a 'else return false' in there!

    If you trigger an event from within an action, condition or expression, call pRuntime->NewSOL() before it and pRuntime->RestoreSOL() after it. Otherwise, conditions and picking in the trigger event will affect picking in the event that caused the trigger.

  • You can't do that with global variables - you can only retrieve a pre-determined global variable. You could also try an INI - you can conveniently edit the file in an external editor like Notepad, and have the game read lines from that.

  • Yeah, just use an expression with the set filter action.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I disagree, I think motion blur is an important addition if the graphics hardware can afford it. Games tend to run with no motion blur at all, effectively being a series of very fast slides, and luckily your brain is clever enough to see motion from this unnatural sequence of images. Add motion blur (which happens with real film), and a still image also contains information about motion, and the brain can extract more information about what is happening on-screen. Try playing a game at 20fps with motion blur off then on to make the difference obvious. When it's on, the low framerate is much more tolerable, because instead of seeing a still image for 50ms, you're looking at an image with motion information.

    In fact, motion blur is a form of antialiasing, but through time rather than through space. Therefore anything to make it more usable is a good idea.