Ashley's Recent Forum Activity

  • is it possible for a plugin to use some of these same conversion functions internally?

    No, those functions aren't available at runtime (even the runtime doesn't use them, because expressions are exported to the runtime in a preprocessed format).

  • Nice graphics I thought the way your bullets move quite slowly compared to theirs made it hard, but I love the parallaxing space background!

  • I think this is a satirical comment on Ghost Shooter mods, folks

  • IIRC (David should be able to confirm) the mass of an object is proportional to its size. Therefore bigger objects require more force. If you're using a custom collision mask, it depends on the area inside the polygon.

    I'm not sure this is the best way to do it, actually. It doesn't seem to make sense saying "Mass = 1" then having that change if you stretch the object...

    And yes, if you use an ellipse, it'll have the same with/height as the bounding box.

  • right now i don't think it exports the correct dx update

    It doesn't export any DirectX update.

    You can just put d3dx9_39.dll in the same folder as the EXE and it should work without any updates - however, if you use XAudio2, you need other DirectX files, so go for the installer/dxwebsetup thing.

    FYI the error message directs the user to this page, where the very first thing listed is what they need to install.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I think that I found the answer:

    Z order = ( X + Y ) / 2

    Is this correct (so simple)?

    I think that's right for specifically 45 degrees. There'd be some trig for other angles, but especially for 45 degrees, that should work

  • Either way, you would probably want to use a mesh.

    It actually looks like simple parallax scrolling (change the layer scroll rates). Also you don't need a mesh at all if it's just a flat object in the distance - just use Z elevation.

  • Fullscreen had problems in 0.99/0.99.2, but it should work in either 0.98.9 or 0.99.3.

  • Download 0.99.3 now! (unstable)

    Link to 0.99.2 changelog

    This build fixes some of the final (hopefully) problems introduced by the 0.99 update. Take note of the breaking change, and exercise usual caution since it's an unstable build.

    Possible breaking changes

    • [CHANGE] The 'Create object' actions in the System object, and the 'Spawn object' action of the Sprite object, previously picked all events created in the event. In 0.99.3, it now instead only picks the last object created with the action. In other words, events like the following now have different behavior:

    + Start of layout

    -> Create A

    -> Create A

    -> Create A

    -> Set A position to (100,100)

    The old behavior was to set all three A's position to (100,100). In 0.99.3, the action only applies to the last created object, so two As are not moved, and the third one moves to (100,100). If you want the old behavior in 0.99.3, you would need to copy the set position action after each of the Create actions. This allows greater flexibility in managing created objects (eg. you can now create two objects and move them to different positions in the same event), and fixes some annoying bugs with creating objects in loops.

    Tip: if this becomes annoying because you create a lot of objects in an event, try re-factoring with a 'repeat N times' condition like so:

    + Start of layout

    + Repeat N times

    -> Create A

    -> Set something in A...

    Changelog

    Behaviors

    • [FIX] RTS movement: configuration error causing error on startup
    • [FIX] Platform Movement: Jitter bug with left and right gravity direction
    • [FIX] Platform Movement: On ground registering unexpectly when jumping up through a platform
    • [FIX] Physics: massive memory leak causing crashes in a few seconds under some circumstances
    • [FIX] Physics: crash calling actions (eg. Set Mass) immediately after creating object

    Effects

    • [FIX] Mask - Transparent pixels were unaffected

    General

    • [FIX] Crash removing layouts
    • [FIX] Infinite loop removing event sheets
    • [FIX] A crash when loading an application which had sound resources (caused verifier to crash, therefore saving crashed too)
    • [FIX] Crash previewing some large applications
    • [FIX] Potential crash loading and previewing old .caps

    Plugins

    • [ADD] Particles: action to set particle opacity
    • [ADD] Image Manipulator: new set rgb action
    • [FIX] Sprite: loading an image from file now updates the collision mask
    • [FIX] Sprite: glitch/crashes when using extremely large distort maps. These are not supported.
    • [FIX] Image Manipulator: set r/g/b actions now take values instead of colour parameters
    • [FIX] Light: showed at wrong position for one tick after being created
    • [CHANGE] Sprite: picking behavior of 'spawn object' modified. See breaking changes.

    Runtime

    • [FIX] Objects could disappear when layers rotated
    • [FIX] 'Else' following a 'Sprite overlaps X' condition sometimes ran even when the event was true
    • [FIX] Switching fullscreen mode caused rendering to stop
    • [CHANGE] Picking behavior of system 'create object' actions modified. See breaking changes.
  • You do not have permission to view this post

  • Using 'System - compare values' is what's causing this. This will just calculate two numbers and compare them, ignoring the fact there are multiple instances of the sprite (so it just picks the first one and uses values from that). You should either use comparison conditions within the sprite object itself (which has a 'compare private variable' condition which respects picking), or alternatively, you can put a 'for each sprite' condition at the top of the event, which forces the compare values to run once for each sprite.

  • 1. I don't understand. What do you mean?

    2. Checkout the plugins module with a proper CVS client like TortoiseCVS or SmartCVS.

    3. You can just use the ordinary C runtime functions (fopen etc) to access the disk. You can put any code you like in the DefineACES() function, so what you want to do is possible.

    4.

    struct ControlTableEntry {
    	int vk;
    	const char* name;
    };
    
    ControlTableEntry keyTable[] = {
    	{VK_LBUTTON,	"Left mouse button"},
    	{VK_MBUTTON,	"Middle mouse button"},
    	{VK_RBUTTON,	"Right mouse button"},
    	{VK_TAB,		"Tab"},
    	{VK_RETURN,		"Enter"},
    	{VK_SHIFT,		"Shift"},
    	{VK_LSHIFT,		"Shift (left)"},
    	{VK_RSHIFT,		"Shift (right)"},
    	{VK_CONTROL,	"Control"},
    	{VK_LCONTROL,	"Control (left)"},
    	{VK_RCONTROL,	"Control (right)"},
    	{VK_MENU,		"Alt"},
    	{VK_LMENU,		"Alt (left)"},
    	{VK_RMENU,		"Alt (right)"},
    	{VK_PAUSE,		"Pause"},
    	{VK_ESCAPE,		"Escape"},
    	{VK_SPACE,		"Space"},
    	{VK_HOME,		"Home"},
    	{VK_END,		"End"},
    	{VK_UP,			"Up arrow"},
    	{VK_DOWN,		"Down arrow"},
    	{VK_LEFT,		"Left arrow"},
    	{VK_RIGHT,		"Right arrow"},
    	{VK_INSERT,		"Insert"},
    	{VK_DELETE,		"Delete"},
    	{'0',			"0"},
    	{'1',			"1"},
    	{'2',			"2"},
    	{'3',			"3"},
    	{'4',			"4"},
    	{'5',			"5"},
    	{'6',			"6"},
    	{'7',			"7"},
    	{'8',			"8"},
    	{'9',			"9"},
    	{'A',			"A"},
    	{'B',			"B"},
    	{'C',			"C"},
    	{'D',			"D"},
    	{'E',			"E"},
    	{'F',			"F"},
    	{'G',			"G"},
    	{'H',			"H"},
    	{'I',			"I"},
    	{'J',			"J"},
    	{'K',			"K"},
    	{'L',			"L"},
    	{'M',			"M"},
    	{'N',			"N"},
    	{'O',			"O"},
    	{'P',			"P"},
    	{'Q',			"Q"},
    	{'R',			"R"},
    	{'S',			"S"},
    	{'T',			"T"},
    	{'U',			"U"},
    	{'V',			"V"},
    	{'W',			"W"},
    	{'X',			"X"},
    	{'Y',			"Y"},
    	{'Z',			"Z"},
    	{VK_BACK,		"Backspace"},
    	{VK_NUMPAD0,	"Num pad 0"},
    	{VK_NUMPAD1,	"Num pad 1"},
    	{VK_NUMPAD2,	"Num pad 2"},
    	{VK_NUMPAD3,	"Num pad 3"},
    	{VK_NUMPAD4,	"Num pad 4"},
    	{VK_NUMPAD5,	"Num pad 5"},
    	{VK_NUMPAD6,	"Num pad 6"},
    	{VK_NUMPAD7,	"Num pad 7"},
    	{VK_NUMPAD8,	"Num pad 8"},
    	{VK_NUMPAD9,	"Num pad 9"},
    	{VK_ADD,		"Num pad Add"},
    	{VK_SUBTRACT,	"Num pad Subtract"},
    	{VK_MULTIPLY,	"Num pad Mulitply"},
    	{VK_DIVIDE,		"Num pad Divide"},
    	{VK_DECIMAL,	"Num pad Decimal"},
    	{VK_F1,			"F1"},
    	{VK_F2,			"F2"},
    	{VK_F3,			"F3"},
    	{VK_F4,			"F4"},
    	{VK_F5,			"F5"},
    	{VK_F6,			"F6"},
    	{VK_F7,			"F7"},
    	{VK_F8,			"F8"},
    	{VK_F9,			"F9"},
    	{VK_F10,		"F10"},
    	{VK_F11,		"F11"},
    	{VK_F12,		"F12"},
    	{-1,			""},
    };[/code:2i1xmlg8]
    
    5.  It might help you to buy a C++ reference book or something like that to answer your questions about the language.  #define with nothing after it means the given statement is removed (it is defined as nothing).  Since you probably looked up its definition in the runtime configuration, and the runtime doesn't care about parameter definitions, it is simply removed.  However, the IDE needs to know about parameters, so in the release configuration it is defined as a call to a function.
Ashley's avatar

Ashley

Early Adopter

Member since 21 May, 2007

Twitter
Ashley has 1,442,879 followers

Connect with Ashley

Trophy Case

  • Jupiter Mission Supports Gordon's mission to Jupiter
  • Forum Contributor Made 100 posts in the forums
  • Forum Patron Made 500 posts in the forums
  • Forum Hero Made 1,000 posts in the forums
  • Forum Wizard Made 5,000 posts in the forums
  • Forum Unicorn Made 10,000 posts in the forums
  • Forum Mega Brain Made 20,000 posts in the forums
  • x109
    Coach One of your tutorials has over 1,000 readers
  • x63
    Educator One of your tutorials has over 10,000 readers
  • x3
    Teacher One of your tutorials has over 100,000 readers
  • Sensei One of your tutorials has over 1,000,000 readers
  • Regular Visitor Visited Construct.net 7 days in a row
  • Steady Visitor Visited Construct.net 30 days in a row
  • RTFM Read the fabulous manual
  • x36
    Great Comment One of your comments gets 3 upvotes
  • Email Verified

Progress

32/44
How to earn trophies

Blogs