lionz's Forum Posts

  • Couldn't this just be a single event? When player attacks, disable platform behaviour, wait for 'timer', enable platform behaviour.

  • You could use system compare two variables, if distance(player.x,player.y,enemy.x,enemy.y) less than equal to the 'range value' then enemy set position self.x or self.y +/- value depending on direction. The distance formula calculates the distance between the two objects. You could also do it another way which is to stick an invisible sprite on the enemy and have when player overlaps that sprite then teleport the enemy with set position, the both accomplish the same thing though.

  • Well to teleport it would be set position I guess. If distance between the two is such a value then set the enemy's position to self +/- some value. Pretty simple unless you are looking for something more elaborate.

  • Create a family instance variable and toggle this to a different value for the family instance when the instance is picked as immune. Then under the acquiring target events add a condition that the family instance must have family instance variable set to the non-immune value to be picked.

  • When you pin it to the sub, select 'position', not the default 'position and angle'.

  • It should work but it might not be flexible enough for what you want. If not, then post back in here, there will be tons of ways such as setting the value of the objects to submarine+/-x,y, or I think you can put the UI items into a layer with parallax set to 0,0 which means they never scroll.

  • That's another very generic question, are you a beginner because I would suggest taking a look at the manual before starting something as detailed as a megaman style platformer game. In general you are looking for conditions (press C on an event) then it allows you to run something based on a variable being a certain value. An int is a number, a string is text and boolean is true/false, they can be used as conditions or 'if statements', run an event if such a value is x.

  • Many ways to do it but the easiest might be pin behaviour, apply pin behaviour to the objects, pin them to the submarine in their starting positions and they will move with it.

  • Say I wanted a boss to dig underground, effectively disappearing from the stage. Seconds later, four piles of gravel appear, one containing the boss. If the player attacks that pile, the boss takes damage, pops up, and all other piles disappear. If the boss’ pile isn’t touched, the other piles explode into bullets, two shooting either way horizontally, one shooting up, and two at 45 degree angles. After this part of the attack, the boss charges up, then creates an explosion that you have to get away from.

    Look into using instance variables. You can give the boss a 'state' variable to control what it's doing.

    boss.status = "digging" > trigger dig pattern

    wait 2 seconds

    boss.status = "underground" > trigger gravel pattern

    gravel pattern > create 4 gravel at x,y > choose gravel UID 0-3 and assign one to be the boss, at this point also assign gravel.angle for shooting later

    player attacks gravel where boss=true > boss take damage, destroy gravel

    player attacks gravel where boss =false > destroy gravel > spawn bullet at gravel.angle assigned earlier (i.e. 0 shoots to the right, 180 to the left)

    boss.status = "charging" > trigger charge attack pattern > spawn explosion

    Another example, the boss jumps around with his sword out in front of him. After five jumps, he hops to a high up part of the stage unreachable by the player and begins to throw bullets down at the player.

    Add a counter variable, every time the boss jumps add 1 to it, when it reaches 5, run the pattern for jumping to the higher stage and spawn bullets

  • Yes it's possible, but the question itself is too generic, 'how do I go about it'. You can use conditions or run functions that happen when something is true. If the boss hp is half then increase the damage done. To cycle attacks you just run a function which is a pattern of attacks and when that ends run another function. You can use 'choose' to set a variable randomly and pick functions to perform them in a random order.

  • If angle is greater than 90, set to 90. Specifically it could be if angle is clockwise from 90, then set to 90.

  • I seem to remember I tried this ages ago and couldn't find a way to do it, to apply separate colours while the list box is in selection. You could always create your own, probably better if it's for a game to not use a restricted css object.

  • Depends how you are setting the items but the basics is set selection to index 0 and set color "blue" etc...

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • You probably have all sorts of animations playing on PlayerSprite set by other events. What you're looking to do is have when trans="super" - set anim frame to 5. Your current events only set the anim frame to 5 when you overlap the power up but it won't stay like this if you are setting other animations and it won't be a visible change when playing the game.

  • Well the 8 direction behaviour and pathfinding are there for top down RPG games. The way you have done it you need to do something like if player.bullet.angleofmotion is between 45 and -45 then play 'up' animation, between 46 and 135 then play 'right' animation, that kind of thing.