From 2ea0418857102c4c380a5b20a3d6deae3ac2ac65 Mon Sep 17 00:00:00 2001 From: rick Date: Sat, 5 Dec 2020 16:09:52 +0100 Subject: [PATCH] =?UTF-8?q?Ajout=20d=C3=A9tection=20sprite=20attaque=20cor?= =?UTF-8?q?ps=20=C3=A0=20corps?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- objects/oPlayer/KeyPress_74.gml | 30 ++++++++++++ objects/oPlayer/Step_0.gml | 51 ++++++++++----------- objects/oPlayer/oPlayer.yy | 81 +++++++++++++++++---------------- 3 files changed, 96 insertions(+), 66 deletions(-) create mode 100644 objects/oPlayer/KeyPress_74.gml diff --git a/objects/oPlayer/KeyPress_74.gml b/objects/oPlayer/KeyPress_74.gml new file mode 100644 index 0000000..d4ab0e8 --- /dev/null +++ b/objects/oPlayer/KeyPress_74.gml @@ -0,0 +1,30 @@ + // Attaque au corp à corp + + //jouer l'animation + + tailleEpee = 20; // à définir + + switch (image_index) { + case 0: + inst = collision_rectangle(x+5, y+tailleEpee, x-5, y+tailleEpee, oMonster, true, oPlayer); + break; + case 1: + inst = collision_rectangle(x+tailleEpee, y+5, x+tailleEpee, y-5, oMonster, true, oPlayer); + break; + case 2: + inst = collision_rectangle(x+5, y-tailleEpee, x-5, y-tailleEpee, oMonster, true, oPlayer); + break; + case 3: + inst = collision_rectangle(x-tailleEpee, y+5, x-tailleEpee, y-5, oMonster, true, oPlayer); + break; + default: + inst = noone; + } + + if (inst != noone) { + show_debug_message("objet trouvé !"); + // attaque + } else { + //a supp + show_debug_message("pas d'objet..."); + } \ No newline at end of file diff --git a/objects/oPlayer/Step_0.gml b/objects/oPlayer/Step_0.gml index 83976d3..9c8af69 100644 --- a/objects/oPlayer/Step_0.gml +++ b/objects/oPlayer/Step_0.gml @@ -1,27 +1,26 @@ -keyLeft = keyboard_check(vk_left) or keyboard_check(ord("Q")); -keyRight = keyboard_check(vk_right) or keyboard_check(ord("D")); -keyUp = keyboard_check(vk_up) or keyboard_check(ord("Z")); -keyDown = keyboard_check(vk_down) or keyboard_check(ord("S")); -keyAttack = keyboard_check_pressed(vk_shift); - - -// Déplacement du joueur - -deplaceHorizontal = keyRight - keyLeft; -deplaceVertical = keyDown - keyUp; - -x += deplaceHorizontal; -y += deplaceVertical; - -seDeplace = (deplaceHorizontal != 0 or deplaceVertical != 0); - -// Animation des sprites - -if (seDeplace) { - if (deplaceHorizontal = 0) { - if (deplaceVertical = 1) image_index = 0; - else image_index = 2; - } - else if (deplaceHorizontal = 1) image_index = 1; - else image_index = 3; +keyLeft = keyboard_check(vk_left) or keyboard_check(ord("Q")); +keyRight = keyboard_check(vk_right) or keyboard_check(ord("D")); +keyUp = keyboard_check(vk_up) or keyboard_check(ord("Z")); +keyDown = keyboard_check(vk_down) or keyboard_check(ord("S")); + + +// Déplacement du joueur + +deplaceHorizontal = keyRight - keyLeft; +deplaceVertical = keyDown - keyUp; + +x += deplaceHorizontal; +y += deplaceVertical; + +seDeplace = (deplaceHorizontal != 0 or deplaceVertical != 0); + +// Animation des sprites + +if (seDeplace) { + if (deplaceHorizontal = 0) { + if (deplaceVertical = 1) image_index = 0; + else image_index = 2; + } + else if (deplaceHorizontal = 1) image_index = 1; + else image_index = 3; } \ No newline at end of file diff --git a/objects/oPlayer/oPlayer.yy b/objects/oPlayer/oPlayer.yy index 6082346..788e135 100644 --- a/objects/oPlayer/oPlayer.yy +++ b/objects/oPlayer/oPlayer.yy @@ -1,41 +1,42 @@ -{ - "spriteId": { - "name": "sPlayer", - "path": "sprites/sPlayer/sPlayer.yy", - }, - "solid": false, - "visible": true, - "spriteMaskId": null, - "persistent": false, - "parentObjectId": null, - "physicsObject": false, - "physicsSensor": false, - "physicsShape": 1, - "physicsGroup": 1, - "physicsDensity": 0.5, - "physicsRestitution": 0.1, - "physicsLinearDamping": 0.1, - "physicsAngularDamping": 0.1, - "physicsFriction": 0.2, - "physicsStartAwake": true, - "physicsKinematic": false, - "physicsShapePoints": [], - "eventList": [ - {"isDnD":false,"eventNum":0,"eventType":3,"collisionObjectId":null,"parent":{"name":"oPlayer","path":"objects/oPlayer/oPlayer.yy",},"resourceVersion":"1.0","name":"","tags":[],"resourceType":"GMEvent",}, - {"isDnD":false,"eventNum":0,"eventType":0,"collisionObjectId":null,"parent":{"name":"oPlayer","path":"objects/oPlayer/oPlayer.yy",},"resourceVersion":"1.0","name":"","tags":[],"resourceType":"GMEvent",}, - ], - "properties": [ - {"varType":1,"value":"0","rangeEnabled":false,"rangeMin":0.0,"rangeMax":10.0,"listItems":[],"multiselect":false,"filters":[],"resourceVersion":"1.0","name":"deplaceHorizontal","tags":[],"resourceType":"GMObjectProperty",}, - {"varType":1,"value":"0","rangeEnabled":false,"rangeMin":0.0,"rangeMax":10.0,"listItems":[],"multiselect":false,"filters":[],"resourceVersion":"1.0","name":"deplaceVertical","tags":[],"resourceType":"GMObjectProperty",}, - {"varType":0,"value":"0","rangeEnabled":false,"rangeMin":0.0,"rangeMax":10.0,"listItems":[],"multiselect":false,"filters":[],"resourceVersion":"1.0","name":"spriteDir","tags":[],"resourceType":"GMObjectProperty",}, - ], - "overriddenProperties": [], - "parent": { - "name": "Entity", - "path": "folders/Objects/Entity.yy", - }, - "resourceVersion": "1.0", - "name": "oPlayer", - "tags": [], - "resourceType": "GMObject", +{ + "spriteId": { + "name": "sPlayer", + "path": "sprites/sPlayer/sPlayer.yy", + }, + "solid": false, + "visible": true, + "spriteMaskId": null, + "persistent": false, + "parentObjectId": null, + "physicsObject": false, + "physicsSensor": false, + "physicsShape": 1, + "physicsGroup": 1, + "physicsDensity": 0.5, + "physicsRestitution": 0.1, + "physicsLinearDamping": 0.1, + "physicsAngularDamping": 0.1, + "physicsFriction": 0.2, + "physicsStartAwake": true, + "physicsKinematic": false, + "physicsShapePoints": [], + "eventList": [ + {"isDnD":false,"eventNum":0,"eventType":3,"collisionObjectId":null,"parent":{"name":"oPlayer","path":"objects/oPlayer/oPlayer.yy",},"resourceVersion":"1.0","name":"","tags":[],"resourceType":"GMEvent",}, + {"isDnD":false,"eventNum":0,"eventType":0,"collisionObjectId":null,"parent":{"name":"oPlayer","path":"objects/oPlayer/oPlayer.yy",},"resourceVersion":"1.0","name":"","tags":[],"resourceType":"GMEvent",}, + {"isDnD":false,"eventNum":74,"eventType":9,"collisionObjectId":null,"parent":{"name":"oPlayer","path":"objects/oPlayer/oPlayer.yy",},"resourceVersion":"1.0","name":"","tags":[],"resourceType":"GMEvent",}, + ], + "properties": [ + {"varType":1,"value":"0","rangeEnabled":false,"rangeMin":0.0,"rangeMax":10.0,"listItems":[],"multiselect":false,"filters":[],"resourceVersion":"1.0","name":"deplaceHorizontal","tags":[],"resourceType":"GMObjectProperty",}, + {"varType":1,"value":"0","rangeEnabled":false,"rangeMin":0.0,"rangeMax":10.0,"listItems":[],"multiselect":false,"filters":[],"resourceVersion":"1.0","name":"deplaceVertical","tags":[],"resourceType":"GMObjectProperty",}, + {"varType":0,"value":"0","rangeEnabled":false,"rangeMin":0.0,"rangeMax":10.0,"listItems":[],"multiselect":false,"filters":[],"resourceVersion":"1.0","name":"spriteDir","tags":[],"resourceType":"GMObjectProperty",}, + ], + "overriddenProperties": [], + "parent": { + "name": "Entity", + "path": "folders/Objects/Entity.yy", + }, + "resourceVersion": "1.0", + "name": "oPlayer", + "tags": [], + "resourceType": "GMObject", } \ No newline at end of file