Kincaid's Recent Forum Activity

  • Hm, sounds more like an answer to my other thread. This would solve the problem with rotating line of sight without rotating the animation. I'm not sure how this would help with this problem but I will try it. Thanks.

  • Hi, I have a character with a bullet behavior. You can rotate the bullet movement angle with the wasd keys to turn the character in 90 degree steps (all in top-down view). Now I need the line of sight behavior to check if an enemy is in attack range. The problem is that the line of sight always goes east. I can rotate the character and the line of sight rotates with him but this doesn't work with my animation, when you go west the character appears upside down. Is there a way to rotate the line of sight with the bullet movement angle? Or do I have to rotate my character when I want to use line of sight and I have to rotate my animation? Or is there an even better way to check if an enemy is in attack range?

  • Unfortunately I have a similar problem with my player character but this time I don't know how to resolve it.

    Like I said the player character is moving with the bullet behavior and the player is able to rotate the angle of bullet movement by 90 degrees by hitting the wasd keys. I have done this with these events:

    Keyboard on W pressed - player - set bullet angle of motion to 270 degrees

    player - set animation to "WalkNorth"

    Same for A, S and D.

    Collision check looks like this:

    Player on collision with fence OR Player is overlapping fence - player set bullet disabled

    Now I thought I can just stop the bullet movement when the player hits the fence and enable it again when the player hits one of the wasd keys. But the player character only moves a bit after rotating and then stops again. Again I think this is because he is still touching the fence. Also the player can just hit the w key when standing at the top fence and he will move a bit up every time he does which lets the player character move through the fence.

    Then I tried to set the bullet speed to 0 when the player hits the fence but now it is acting pretty strange. When I hit the nort fence the character stops moving. A and D let him rotate to west or east but he only moves i tiny bit. When the character faces north and I hit W he doesn't rotate but moves a bit to the west. When I turn south and hit the S key he moves slightly to the east. I am not possible to move the character away from the fence.

    You can download the file here: Unfortunately I have a similar problem with my player character but this time I don't know how to resolve it.

    Like I said the player character is moving with the bullet behavior and the player is able to rotate the angle of bullet movement by 90 degrees by hitting the wasd keys. I have done this with these events:

    Keyboard on W pressed - player - set bullet angle of motion to 270 degrees

    player - set animation to "WalkNorth"

    Same for A, S and D.

    Collision check looks like this:

    Player on collision with fence OR Player is overlapping fence - player set bullet disabled

    Now I thought I can just stop the bullet movement when the player hits the fence and enable it again when the player hits one of the wasd keys. But the player character only moves a bit after rotating and then stops again. Again I think this is because he is still touching the fence. Also the player can just hit the w key when standing at the top fence and he will move a bit up every time he does which lets the player character move through the fence.

    Then I tried to set the bullet speed to 0 when the player hits the fence but now it is acting pretty strange. When I hit the nort fence the character stops moving. A and D let him rotate to west or east but he only moves i tiny bit. When the character faces north and I hit W he doesn't rotate but moves a bit to the west. When I turn south and hit the S key he moves slightly to the east. I am not possible to move the character away from the fence.

    You can download the file here: https: //www. dropbox. com/s/l5d5swmgasiy8a4/Snakelike.capx?dl=0

    Edit: And again, as soon as you post your question you find the solution. Can someone explain to me why this is working now and if there is a "right" solution for this problem?

  • Still good to know that they have to be on the same layer. Didn't know that.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Hi, I just installed Construct 2 and did some of the beginners tutorials. Now I am trying to make a game but I don't exactly understand the solid behavior. I have my layout and all around the layout I placed sprites as a fence and gave them the solid behavior. My player character has the bullet behavior, no 8 directional movement because the player should move like in the game "snake". He is always moving forward and the player can rotate. The enemy has the bullet behavior too and should rotate randomly every few seconds. Both, player and enemy, are just going through my solid objects. I understand that you need the 8 directional movement behavior to make them react to solid objects but I need wasd-movement instead of the arrow keys. I understand too that I need to create events that check for player/enemy to collide with the fence and here it's getting tricky.

    I tried it first with the enemy: I want him to rotate 90 degrees clockwise when hitting the fence. So I made the event like this: Enemy - on collision with fence - enemy - rotate 90 degrees clockwise. This works when it first hits a wall. At the start he is in the middle of my layout walking to the right. He hits the fence and rotates 90 degrees and walks downward. But when he hits the next wall he rotates 180 going upwards, then again 180 and so on. I guess the problem is that when he hits the second wall he is exactly in the corner. He rotates 90 degrees clockwise walking along the fence but still touching it and thus rotates again in the next tick. What is the best way to avoid this? Moving the sprite a little bit away from the wall? But how do I know in which direction I should move it? Or is there a better way to let the enemy rotate when he touches the fence? There is the bounce off solids option, but I can't set the angle in which he is bouncing, right? Any other ideas maybe?

    Edit: Ha, searched for another problem and found the solution for this one. Instead of rotating the enemy by 90 degrees I can set the angle of the bullet movement to the actual angle - 90 degrees and it works.

Kincaid's avatar

Kincaid

Member since 28 Feb, 2016

None one is following Kincaid yet!

Trophy Case

  • 8-Year Club
  • Email Verified

Progress

9/44
How to earn trophies