DrDuck0117 3 月之前
父节点
当前提交
8c19dccd97

+ 1 - 0
ddmyx.yyp

@@ -73,6 +73,7 @@
     {"id":{"name":"oFade","path":"objects/oFade/oFade.yy",},},
     {"id":{"name":"oFocusEndEffect","path":"objects/oFocusEndEffect/oFocusEndEffect.yy",},},
     {"id":{"name":"oFocusingEffect","path":"objects/oFocusingEffect/oFocusingEffect.yy",},},
+    {"id":{"name":"oHitEnemyEffect","path":"objects/oHitEnemyEffect/oHitEnemyEffect.yy",},},
     {"id":{"name":"oInGameManager","path":"objects/oInGameManager/oInGameManager.yy",},},
     {"id":{"name":"oInteractIndicator","path":"objects/oInteractIndicator/oInteractIndicator.yy",},},
     {"id":{"name":"oInventory","path":"objects/oInventory/oInventory.yy",},},

+ 1 - 0
objects/oBossHex/Create_0.gml

@@ -44,6 +44,7 @@ death_callback = function()
 		y_spd_kb = 0;
 		enemy_death();
 	}
+	screen_shake(30);
 	global.time_scale_t = 0;
 	global.time_scale = 0.05;
 	global.camera.smooth = 0.1;

+ 3 - 1
objects/oFocusEndEffect/Create_0.gml

@@ -9,4 +9,6 @@ dir = random(360);
 x_spd = lengthdir_x(spd, dir);
 y_spd = lengthdir_y(spd, dir);
 
-delay = random(10);
+delay = random(10);
+
+depth = 100;

+ 1 - 0
objects/oHitEnemyEffect/Alarm_0.gml

@@ -0,0 +1 @@
+instance_destroy();

+ 14 - 0
objects/oHitEnemyEffect/Create_0.gml

@@ -0,0 +1,14 @@
+image_blend = make_colour_hsv(170, 255, 128);
+
+base_scale = random_range(0.5, 1);
+
+spd = random_range(9, 15);
+
+dir = 0;
+
+x_spd = 0;
+y_spd = 0;
+
+delay = random_range(1, 6);
+
+depth = 100;

+ 27 - 0
objects/oHitEnemyEffect/Step_0.gml

@@ -0,0 +1,27 @@
+if delay > 0
+{
+	delay--;
+	exit;
+}
+
+y_spd += global.g;
+
+dir = point_direction(0, 0, x_spd, y_spd);
+spd = point_distance(0, 0, x_spd, y_spd);
+
+image_angle = dir;
+
+var _stretch = spd * 0.02;
+
+image_xscale = base_scale * (1 + _stretch);
+image_yscale = base_scale / (1 + _stretch);
+
+if place_meeting(x, y + y_spd, oParentSolid)
+{
+	var _part = part_system_create_layer("Effect", false, peINKBurst);
+	part_system_position(_part, x, y);
+	instance_destroy();
+}
+
+x += x_spd;
+y += y_spd;

+ 40 - 0
objects/oHitEnemyEffect/oHitEnemyEffect.yy

@@ -0,0 +1,40 @@
+{
+  "$GMObject":"",
+  "%Name":"oHitEnemyEffect",
+  "eventList":[
+    {"$GMEvent":"v1","%Name":"","collisionObjectId":null,"eventNum":0,"eventType":0,"isDnD":false,"name":"","resourceType":"GMEvent","resourceVersion":"2.0",},
+    {"$GMEvent":"v1","%Name":"","collisionObjectId":null,"eventNum":0,"eventType":3,"isDnD":false,"name":"","resourceType":"GMEvent","resourceVersion":"2.0",},
+    {"$GMEvent":"v1","%Name":"","collisionObjectId":null,"eventNum":0,"eventType":2,"isDnD":false,"name":"","resourceType":"GMEvent","resourceVersion":"2.0",},
+  ],
+  "managed":true,
+  "name":"oHitEnemyEffect",
+  "overriddenProperties":[],
+  "parent":{
+    "name":"ParticleEffects",
+    "path":"folders/ParticleEffects.yy",
+  },
+  "parentObjectId":null,
+  "persistent":false,
+  "physicsAngularDamping":0.1,
+  "physicsDensity":0.5,
+  "physicsFriction":0.2,
+  "physicsGroup":1,
+  "physicsKinematic":false,
+  "physicsLinearDamping":0.1,
+  "physicsObject":false,
+  "physicsRestitution":0.1,
+  "physicsSensor":false,
+  "physicsShape":1,
+  "physicsShapePoints":[],
+  "physicsStartAwake":true,
+  "properties":[],
+  "resourceType":"GMObject",
+  "resourceVersion":"2.0",
+  "solid":false,
+  "spriteId":{
+    "name":"sCircle24",
+    "path":"sprites/sCircle24/sCircle24.yy",
+  },
+  "spriteMaskId":null,
+  "visible":true,
+}

+ 12 - 1
objects/oParentEnemy/Create_0.gml

@@ -1,12 +1,23 @@
 get_hit = function(_info)
 {
 	if has_ink
+	{
 		player_add_INK(1);
+		
+		var _dir = point_direction(0, 0, _info.kbFactorX, -abs(_info.kbFactorY));
+		repeat(6)
+		{
+			var _pe = icl(oHitEnemyEffect);
+			_pe.dir = random_range(_dir - 45, _dir + 45);
+			_pe.x_spd = lengthdir_x(_pe.spd, _pe.dir);
+			_pe.y_spd = lengthdir_y(_pe.spd, _pe.dir);
+		}
+	}
 	else
 	{
 		var _struct = particle_get_info(peBladeHitHazard);
 		var _part_type = _struct.emitters[0].parttype.ind;
-		var _dir = point_direction(0, 0, -_info.kbFactorX, -_info.kbFactorY);
+		var _dir = point_direction(0, 0, _info.kbFactorX, -abs(_info.kbFactorY));
 		part_type_direction(_part_type, _dir - 45, _dir + 45, 0, 5);
     
 		var _part = part_system_create_layer("Effect", false, peBladeHitHazard);

+ 3 - 2
objects/oPlayer/Draw_0.gml

@@ -15,13 +15,14 @@ shader_reset();
 
 if global.developer_mode
 {
-	/*
+	
 	draw_set_halign(fa_left);
 	draw_set_valign(fa_middle);
 	draw_set_font(fTest);
+	draw_set_colour(c_white);
 	
 	draw_text(x + 72, y - 96, script_get_name(state));
 	draw_text(x + 72, y - 48, sprite_get_name(sprite_index) + " " + string(image_index));
-	*/
+	
 
 }

+ 1 - 1
objects/oPlayerHitbox/Create_0.gml

@@ -22,4 +22,4 @@ if global.developer_mode
 else
 	image_alpha = 0;
 	
-depth = 100;
+depth = 101;

+ 1 - 1
objects/oRippleExpand/Create_0.gml

@@ -1,7 +1,7 @@
 r_in = 0;
 r_out = sqrt(sqr(room_width) + sqr(room_height));
 
-expand_speed = 25;
+expand_speed = 32;
 depth = -10000;
 
 ui_x = 0;

+ 20 - 6
rooms/rTest_1/rTest_1.yy

@@ -96,8 +96,6 @@
     {"name":"inst_409D4AF3","path":"rooms/rTest_1/rTest_1.yy",},
     {"name":"inst_9B86AF8","path":"rooms/rTest_1/rTest_1.yy",},
     {"name":"inst_2DED3B8D","path":"rooms/rTest_1/rTest_1.yy",},
-    {"name":"inst_598B14B9","path":"rooms/rTest_1/rTest_1.yy",},
-    {"name":"inst_26EF4519","path":"rooms/rTest_1/rTest_1.yy",},
     {"name":"inst_3850BA5B","path":"rooms/rTest_1/rTest_1.yy",},
     {"name":"inst_6D68E23B","path":"rooms/rTest_1/rTest_1.yy",},
     {"name":"inst_100927D7","path":"rooms/rTest_1/rTest_1.yy",},
@@ -531,13 +529,22 @@
     {"name":"inst_1D07E405","path":"rooms/rTest_1/rTest_1.yy",},
     {"name":"inst_1CC1B9E2","path":"rooms/rTest_1/rTest_1.yy",},
     {"name":"inst_21BB4332","path":"rooms/rTest_1/rTest_1.yy",},
-    {"name":"inst_91B383D","path":"rooms/rTest_1/rTest_1.yy",},
     {"name":"inst_5480E723","path":"rooms/rTest_1/rTest_1.yy",},
     {"name":"inst_19F41D73","path":"rooms/rTest_1/rTest_1.yy",},
     {"name":"inst_50E073CD","path":"rooms/rTest_1/rTest_1.yy",},
     {"name":"inst_273279C9","path":"rooms/rTest_1/rTest_1.yy",},
     {"name":"inst_4AB26584","path":"rooms/rTest_1/rTest_1.yy",},
     {"name":"inst_31F5D3B9","path":"rooms/rTest_1/rTest_1.yy",},
+    {"name":"inst_91B383D","path":"rooms/rTest_1/rTest_1.yy",},
+    {"name":"inst_54F324A","path":"rooms/rTest_1/rTest_1.yy",},
+    {"name":"inst_10AF4E7F","path":"rooms/rTest_1/rTest_1.yy",},
+    {"name":"inst_20AE5E03","path":"rooms/rTest_1/rTest_1.yy",},
+    {"name":"inst_5CC87C97","path":"rooms/rTest_1/rTest_1.yy",},
+    {"name":"inst_7534D132","path":"rooms/rTest_1/rTest_1.yy",},
+    {"name":"inst_2EB4F1E6","path":"rooms/rTest_1/rTest_1.yy",},
+    {"name":"inst_1D1CDBCD","path":"rooms/rTest_1/rTest_1.yy",},
+    {"name":"inst_554F996B","path":"rooms/rTest_1/rTest_1.yy",},
+    {"name":"inst_5E1AF5F8","path":"rooms/rTest_1/rTest_1.yy",},
   ],
   "isDnd":false,
   "layers":[
@@ -632,8 +639,6 @@
         {"$GMRInstance":"v4","%Name":"inst_409D4AF3","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_409D4AF3","objectId":{"name":"oBlockSlippery","path":"objects/oBlockSlippery/oBlockSlippery.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3776.0,"y":928.0,},
         {"$GMRInstance":"v4","%Name":"inst_9B86AF8","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_9B86AF8","objectId":{"name":"oBlockSlippery","path":"objects/oBlockSlippery/oBlockSlippery.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3776.0,"y":864.0,},
         {"$GMRInstance":"v4","%Name":"inst_2DED3B8D","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_2DED3B8D","objectId":{"name":"oBlockSlippery","path":"objects/oBlockSlippery/oBlockSlippery.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3776.0,"y":800.0,},
-        {"$GMRInstance":"v4","%Name":"inst_598B14B9","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_598B14B9","objectId":{"name":"oBlockSlippery","path":"objects/oBlockSlippery/oBlockSlippery.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3776.0,"y":736.0,},
-        {"$GMRInstance":"v4","%Name":"inst_26EF4519","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_26EF4519","objectId":{"name":"oBlockSlippery","path":"objects/oBlockSlippery/oBlockSlippery.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3776.0,"y":672.0,},
         {"$GMRInstance":"v4","%Name":"inst_3850BA5B","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_3850BA5B","objectId":{"name":"oBlockSlippery","path":"objects/oBlockSlippery/oBlockSlippery.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3776.0,"y":544.0,},
         {"$GMRInstance":"v4","%Name":"inst_6D68E23B","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_6D68E23B","objectId":{"name":"oBlockSlippery","path":"objects/oBlockSlippery/oBlockSlippery.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3776.0,"y":608.0,},
         {"$GMRInstance":"v4","%Name":"inst_100927D7","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_100927D7","objectId":{"name":"oBlockSlippery","path":"objects/oBlockSlippery/oBlockSlippery.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3776.0,"y":480.0,},
@@ -978,7 +983,7 @@
         {"$GMRInstance":"v4","%Name":"inst_7A113AF5","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_7A113AF5","objectId":{"name":"oBlockSlippery","path":"objects/oBlockSlippery/oBlockSlippery.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3008.0,"y":1568.0,},
         {"$GMRInstance":"v4","%Name":"inst_5966B69F","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_5966B69F","objectId":{"name":"oSpike","path":"objects/oSpike/oSpike.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":2528.0,"y":1120.0,},
         {"$GMRInstance":"v4","%Name":"inst_34BCE1CA","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_34BCE1CA","objectId":{"name":"oSpike","path":"objects/oSpike/oSpike.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":2592.0,"y":1120.0,},
-        {"$GMRInstance":"v4","%Name":"inst_574F2C78","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_574F2C78","objectId":{"name":"oEnemyDummy","path":"objects/oEnemyDummy/oEnemyDummy.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":2944.0,"y":1440.0,},
+        {"$GMRInstance":"v4","%Name":"inst_574F2C78","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_574F2C78","objectId":{"name":"oEnemyDummy","path":"objects/oEnemyDummy/oEnemyDummy.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":2880.0,"y":1440.0,},
         {"$GMRInstance":"v4","%Name":"inst_75816379","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_75816379","objectId":{"name":"oSpike","path":"objects/oSpike/oSpike.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3456.0,"y":1504.0,},
         {"$GMRInstance":"v4","%Name":"inst_25B34436","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_25B34436","objectId":{"name":"oSpike","path":"objects/oSpike/oSpike.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3456.0,"y":1440.0,},
         {"$GMRInstance":"v4","%Name":"inst_C1C7A79","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_C1C7A79","objectId":{"name":"oSpike","path":"objects/oSpike/oSpike.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3456.0,"y":1376.0,},
@@ -1084,6 +1089,15 @@
         {"$GMRInstance":"v4","%Name":"inst_273279C9","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_273279C9","objectId":{"name":"oBlockSlippery","path":"objects/oBlockSlippery/oBlockSlippery.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":256.0,"y":480.0,},
         {"$GMRInstance":"v4","%Name":"inst_4AB26584","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_4AB26584","objectId":{"name":"oBlockSlippery","path":"objects/oBlockSlippery/oBlockSlippery.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":128.0,"y":160.0,},
         {"$GMRInstance":"v4","%Name":"inst_31F5D3B9","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_31F5D3B9","objectId":{"name":"oEnemyCrawl","path":"objects/oEnemyCrawl/oEnemyCrawl.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":992.0,"y":1504.0,},
+        {"$GMRInstance":"v4","%Name":"inst_54F324A","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_54F324A","objectId":{"name":"oEnemyDummy","path":"objects/oEnemyDummy/oEnemyDummy.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3648.0,"y":1120.0,},
+        {"$GMRInstance":"v4","%Name":"inst_10AF4E7F","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_10AF4E7F","objectId":{"name":"oBlockClimbable","path":"objects/oBlockClimbable/oBlockClimbable.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3776.0,"y":736.0,},
+        {"$GMRInstance":"v4","%Name":"inst_20AE5E03","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_20AE5E03","objectId":{"name":"oBlockSlippery","path":"objects/oBlockSlippery/oBlockSlippery.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3776.0,"y":672.0,},
+        {"$GMRInstance":"v4","%Name":"inst_5CC87C97","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_5CC87C97","objectId":{"name":"oEnemyDummy","path":"objects/oEnemyDummy/oEnemyDummy.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3296.0,"y":544.0,},
+        {"$GMRInstance":"v4","%Name":"inst_7534D132","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_7534D132","objectId":{"name":"oBlockClimbable","path":"objects/oBlockClimbable/oBlockClimbable.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3328.0,"y":672.0,},
+        {"$GMRInstance":"v4","%Name":"inst_2EB4F1E6","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_2EB4F1E6","objectId":{"name":"oBlockClimbable","path":"objects/oBlockClimbable/oBlockClimbable.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3264.0,"y":672.0,},
+        {"$GMRInstance":"v4","%Name":"inst_1D1CDBCD","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_1D1CDBCD","objectId":{"name":"oEnemyCrawl","path":"objects/oEnemyCrawl/oEnemyCrawl.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3296.0,"y":1504.0,},
+        {"$GMRInstance":"v4","%Name":"inst_554F996B","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_554F996B","objectId":{"name":"oEnemyCrawl","path":"objects/oEnemyCrawl/oEnemyCrawl.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":3488.0,"y":1184.0,},
+        {"$GMRInstance":"v4","%Name":"inst_5E1AF5F8","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":0,"imageSpeed":1.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_5E1AF5F8","objectId":{"name":"oEnemyCrawl","path":"objects/oEnemyCrawl/oEnemyCrawl.yy",},"properties":[],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":2688.0,"y":1504.0,},
       ],"layers":[],"name":"Instances","properties":[],"resourceType":"GMRInstanceLayer","resourceVersion":"2.0","userdefinedDepth":false,"visible":true,},
     {"$GMREffectLayer":"","%Name":"Effect","depth":100,"effectEnabled":true,"effectType":null,"gridX":32,"gridY":32,"hierarchyFrozen":false,"inheritLayerDepth":false,"inheritLayerSettings":false,"inheritSubLayers":true,"inheritVisibility":true,"layers":[],"name":"Effect","properties":[],"resourceType":"GMREffectLayer","resourceVersion":"2.0","userdefinedDepth":false,"visible":true,},
     {"$GMRBackgroundLayer":"","%Name":"Background","animationFPS":15.0,"animationSpeedType":0,"colour":4278190080,"depth":200,"effectEnabled":true,"effectType":null,"gridX":32,"gridY":32,"hierarchyFrozen":false,"hspeed":0.0,"htiled":false,"inheritLayerDepth":false,"inheritLayerSettings":false,"inheritSubLayers":true,"inheritVisibility":true,"layers":[],"name":"Background","properties":[],"resourceType":"GMRBackgroundLayer","resourceVersion":"2.0","spriteId":null,"stretch":false,"userdefinedAnimFPS":false,"userdefinedDepth":false,"visible":true,"vspeed":0.0,"vtiled":false,"x":0,"y":0,},

+ 1 - 1
scripts/DummyAI/DummyAI.gml

@@ -26,7 +26,7 @@ function enemy_dummy_ai()
 				}
 			}
 			facing_x = sign(global.player.x - x);
-			facing_y = sign(global.player.y + sprite_height - y);
+			facing_y = sign(global.player.y + sprite_height / 2 - y);
 			break;
 			
 		case "COUNTER_UP":

+ 6 - 3
scripts/PlayerStates/PlayerStates.gml

@@ -76,9 +76,11 @@ function player_status_update()
 			
 	var _no_cliff = place_meeting(x - sprite_width, y + 1, oParentSolid)
 	&& place_meeting(x + sprite_width, y + 1, oParentSolid)
+	
+	var _no_hazard = !(place_meeting(x - sprite_width, y, oParentHazard)
+	|| place_meeting(x + sprite_width, y, oParentHazard))
 			
-	if _on_ground && _no_cliff &&
-	current_hazard == noone && current_attacker == noone
+	if _on_ground && _no_cliff && _no_hazard
 	{
 		last_safe_x = x;
 		last_safe_y = y;
@@ -223,6 +225,7 @@ function player_check_death()
 		save_game_to_disk();
 		state = state_death;
 		set_sprite(sPlayerDeath);
+		screen_shake(30);
 		
 		var _cam = view_camera[0];
 		var	_cam_x = camera_get_view_x(_cam);
@@ -401,7 +404,7 @@ function state_hitstun_hazard()
 		{
 			oPlayer.x = oPlayer.last_safe_x;
 			oPlayer.y = oPlayer.last_safe_y;
-			camera_snap();
+			//camera_snap();
 		};
 	}
 	player_check_death();

+ 2 - 2
scripts/general/general.gml

@@ -25,8 +25,8 @@ function set_sprite(_sprite)
 
 function camera_snap()
 {
-	oCamera.x = oCamera.x_to;
-	oCamera.y = oCamera.y_to;	
+	oCamera.x = oCamera.follow.x;
+	oCamera.y = oCamera.follow.y;	
 }
 
 /// @desc 触发屏幕震动