You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
AM2R-TimeTrials/objects/oEnemyFrozen.object.gmx

355 lines
11 KiB

<!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!-->
<object>
<spriteName>sIceShard</spriteName>
<solid>0</solid>
<visible>-1</visible>
<depth>0</depth>
<persistent>0</persistent>
<parentName>&lt;undefined&gt;</parentName>
<maskName>&lt;undefined&gt;</maskName>
<events>
<event eventtype="0" enumb="0">
<action>
<libid>1</libid>
<id>603</id>
<kind>7</kind>
<userelative>0</userelative>
<isquestion>0</isquestion>
<useapplyto>-1</useapplyto>
<exetype>2</exetype>
<functionname></functionname>
<codestring></codestring>
<whoName>self</whoName>
<relative>0</relative>
<isnot>0</isnot>
<arguments>
<argument>
<kind>1</kind>
<string>setCollisionBounds(-8, -8, 8, 8);
makeActive();
canbeX = 1;
state = 0;
statetime = 0;
falling = 1;
deathsound = sndEDeath1;
platform = -4;
image_speed = 0;
alarm[0] = 1;
spr0xoff = 0;
spr0yoff = 0;
spr1 = -4;
spr1xoff = 0;
spr1yoff = 0;
spr1a = image_angle;
spr1xs = image_xscale;
spr1ys = image_yscale;
spr1i = 0;
spr2 = -4;
spr2xoff = 0;
spr2yoff = 0;
spr2a = image_angle;
spr2xs = image_xscale;
spr2ys = image_yscale;
spr2i = 0;
spr3 = -4;
spr3xoff = 0;
spr3yoff = 0;
spr3a = image_angle;
spr3xs = image_xscale;
spr3ys = image_yscale;
spr3i = 0;
</string>
</argument>
</arguments>
</action>
</event>
<event eventtype="2" enumb="0">
<action>
<libid>1</libid>
<id>603</id>
<kind>7</kind>
<userelative>0</userelative>
<isquestion>0</isquestion>
<useapplyto>-1</useapplyto>
<exetype>2</exetype>
<functionname></functionname>
<codestring></codestring>
<whoName>self</whoName>
<relative>0</relative>
<isnot>0</isnot>
<arguments>
<argument>
<kind>1</kind>
<string>alarm[0] = 10 + random(10);
spark = instance_create(x + floor(random_range(-16, 16)), y + floor(random_range(-16, 16)), oFXAnimSpark);
spark.gravity_direction = 270;
spark.gravity = 0.1;
spark.sprite_index = sIBeamFXA;
spark.image_speed = 0.3;
spark.image_index = 0;
spark.depth = -20;
</string>
</argument>
</arguments>
</action>
</event>
<event eventtype="3" enumb="0">
<action>
<libid>1</libid>
<id>603</id>
<kind>7</kind>
<userelative>0</userelative>
<isquestion>0</isquestion>
<useapplyto>-1</useapplyto>
<exetype>2</exetype>
<functionname></functionname>
<codestring></codestring>
<whoName>self</whoName>
<relative>0</relative>
<isnot>0</isnot>
<arguments>
<argument>
<kind>1</kind>
<string>if (state == 0 &amp;&amp; falling) {
if (global.waterlevel != 0) {
if (y - 8 &gt; global.waterlevel + global.wateroffset) {
yVel -= 0.05;
if (yVel &lt; -0.5) yVel = -0.5;
xVel *= 0.9;
} else yVel += 0.1;
} else if (isCollisionBottom(2) == 0) yVel += 0.1;
if (isCollisionBottom(2) &gt; 0) {
if (yVel &gt; 1) event_user(0);
if (yVel &gt; 0) yVel *= -0.4;
if (abs(yVel) &lt; 0.3) yVel = 0;
if (collision_line(round(lb), round(bb + 4), round(rb - 1), round(bb + 4), oSlope1, true, true) &gt; 0) {
xVel -= 0.5;
yVel *= 0.5;
}
if (collision_line(round(lb), round(bb + 4), round(rb - 1), round(bb + 4), oSlope2, true, true) &gt; 0) {
xVel += 0.5;
yVel *= 0.5;
}
if (collision_line(round(lb), round(bb + 4), round(rb - 1), round(bb + 4), oSlope1B, true, true) &gt; 0) {
xVel -= 0.2;
yVel *= 0.5;
}
if (collision_line(round(lb), round(bb + 4), round(rb - 1), round(bb + 4), oSlope2B, true, true) &gt; 0) {
xVel += 0.2;
yVel *= 0.5;
}
xVel *= 0.9;
}
if (isCollisionTop(1) &gt; 0 &amp;&amp; yVel &lt; 0) {
yVel *= -1;
xVel *= 0.9;
}
if (isCollisionRight(1) &gt; 0 &amp;&amp; xVel &gt; 0 || isCollisionLeft(1) &gt; 0 &amp;&amp; xVel &lt; 0) xVel *= -0.8;
xVel = min(xVel, 6);
xVel = max(xVel, -6);
yVel = min(yVel, 6);
yVel = max(yVel, -6);
moveTo(xVel, yVel);
image_angle += xVel * -2;
} // if (state == 0 &amp;&amp; falling)
if (statetime &gt;= 150) event_user(0);
statetime += 1;
</string>
</argument>
</arguments>
</action>
</event>
<event eventtype="4" ename="oBomb2">
<action>
<libid>1</libid>
<id>603</id>
<kind>7</kind>
<userelative>0</userelative>
<isquestion>0</isquestion>
<useapplyto>-1</useapplyto>
<exetype>2</exetype>
<functionname></functionname>
<codestring></codestring>
<whoName>self</whoName>
<relative>0</relative>
<isnot>0</isnot>
<arguments>
<argument>
<kind>1</kind>
<string>with (other) event_user(0);
</string>
</argument>
</arguments>
</action>
</event>
<event eventtype="4" ename="oMissile">
<action>
<libid>1</libid>
<id>603</id>
<kind>7</kind>
<userelative>0</userelative>
<isquestion>0</isquestion>
<useapplyto>-1</useapplyto>
<exetype>2</exetype>
<functionname></functionname>
<codestring></codestring>
<whoName>self</whoName>
<relative>0</relative>
<isnot>0</isnot>
<arguments>
<argument>
<kind>1</kind>
<string>event_user(0);
with (other) event_user(0);
</string>
</argument>
</arguments>
</action>
</event>
<event eventtype="4" ename="oMissileExpl">
<action>
<libid>1</libid>
<id>603</id>
<kind>7</kind>
<userelative>0</userelative>
<isquestion>0</isquestion>
<useapplyto>-1</useapplyto>
<exetype>2</exetype>
<functionname></functionname>
<codestring></codestring>
<whoName>self</whoName>
<relative>0</relative>
<isnot>0</isnot>
<arguments>
<argument>
<kind>1</kind>
<string>event_user(0);
</string>
</argument>
</arguments>
</action>
</event>
<event eventtype="4" ename="oPBombExpl">
<action>
<libid>1</libid>
<id>603</id>
<kind>7</kind>
<userelative>0</userelative>
<isquestion>0</isquestion>
<useapplyto>-1</useapplyto>
<exetype>2</exetype>
<functionname></functionname>
<codestring></codestring>
<whoName>self</whoName>
<relative>0</relative>
<isnot>0</isnot>
<arguments>
<argument>
<kind>1</kind>
<string>event_user(0);
</string>
</argument>
</arguments>
</action>
</event>
<event eventtype="4" ename="oBombExpl">
<action>
<libid>1</libid>
<id>603</id>
<kind>7</kind>
<userelative>0</userelative>
<isquestion>0</isquestion>
<useapplyto>-1</useapplyto>
<exetype>2</exetype>
<functionname></functionname>
<codestring></codestring>
<whoName>self</whoName>
<relative>0</relative>
<isnot>0</isnot>
<arguments>
<argument>
<kind>1</kind>
<string>event_user(0);
</string>
</argument>
</arguments>
</action>
</event>
<event eventtype="7" enumb="10">
<action>
<libid>1</libid>
<id>603</id>
<kind>7</kind>
<userelative>0</userelative>
<isquestion>0</isquestion>
<useapplyto>-1</useapplyto>
<exetype>2</exetype>
<functionname></functionname>
<codestring></codestring>
<whoName>self</whoName>
<relative>0</relative>
<isnot>0</isnot>
<arguments>
<argument>
<kind>1</kind>
<string>if (sprite_index == sQueenProjFrozen) {
spawn_rnd_pickup_at(x - 8, y - 4, 100);
spawn_rnd_pickup_at(x + 8, y - 4, 100);
spawn_rnd_pickup_at(x, y - 8, 100);
canbeX = 0;
}
enemy_death_frozen();
</string>
</argument>
</arguments>
</action>
</event>
<event eventtype="8" enumb="0">
<action>
<libid>1</libid>
<id>603</id>
<kind>7</kind>
<userelative>0</userelative>
<isquestion>0</isquestion>
<useapplyto>-1</useapplyto>
<exetype>2</exetype>
<functionname></functionname>
<codestring></codestring>
<whoName>self</whoName>
<relative>0</relative>
<isnot>0</isnot>
<arguments>
<argument>
<kind>1</kind>
<string>spr0len = point_distance(x, y, x + spr0xoff, y + spr0yoff);
spr0dir = image_angle + point_direction(x, y, x + spr0xoff, y + spr0yoff);
spr1len = point_distance(x, y, x + spr1xoff, y + spr1yoff);
spr1dir = image_angle + point_direction(x, y, x + spr1xoff, y + spr1yoff);
spr2len = point_distance(x, y, x + spr2xoff, y + spr2yoff);
spr2dir = image_angle + point_direction(x, y, x + spr2xoff, y + spr2yoff);
spr3len = point_distance(x, y, x + spr3xoff, y + spr3yoff);
spr3dir = image_angle + point_direction(x, y, x + spr3xoff, y + spr3yoff);
draw_sprite_ext(sprite_index, -1, x + lengthdir_x(spr0len, spr0dir), y + lengthdir_y(spr0len, spr0dir), image_xscale, image_yscale, image_angle, -1, 1);
if (spr1 != -4) draw_sprite_ext(spr1, spr1i, x + lengthdir_x(spr1len, spr1dir), y + lengthdir_y(spr1len, spr1dir), spr1xs, spr1ys, image_angle + spr1a, -1, 1);
if (spr2 != -4) draw_sprite_ext(spr2, spr2i, x + lengthdir_x(spr2len, spr2dir), y + lengthdir_y(spr2len, spr2dir), spr2xs, spr2ys, image_angle + spr2a, -1, 1);
if (spr3 != -4) draw_sprite_ext(spr3, spr3i, x + lengthdir_x(spr3len, spr3dir), y + lengthdir_y(spr3len, spr3dir), spr3xs, spr3ys, image_angle + spr3a, -1, 1);
</string>
</argument>
</arguments>
</action>
</event>
</events>
<PhysicsObject>0</PhysicsObject>
<PhysicsObjectSensor>0</PhysicsObjectSensor>
<PhysicsObjectShape>0</PhysicsObjectShape>
<PhysicsObjectDensity>0.5</PhysicsObjectDensity>
<PhysicsObjectRestitution>0.100000001490116</PhysicsObjectRestitution>
<PhysicsObjectGroup>0</PhysicsObjectGroup>
<PhysicsObjectLinearDamping>0.100000001490116</PhysicsObjectLinearDamping>
<PhysicsObjectAngularDamping>0.100000001490116</PhysicsObjectAngularDamping>
<PhysicsObjectFriction>0.200000002980232</PhysicsObjectFriction>
<PhysicsObjectAwake>-1</PhysicsObjectAwake>
<PhysicsObjectKinematic>-1</PhysicsObjectKinematic>
<PhysicsShapePoints/>
</object>