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/oEndingCrystal.object.gmx

329 lines
6.9 KiB

<!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!-->
<object>
<spriteName>sXCrystal</spriteName>
<solid>0</solid>
<visible>-1</visible>
<depth>1</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>///Initial Vars
xShake = 0;
stage = 0;
orbitX = 0;
orbitY = 0;
targetx = 0;
targety = 0;
orbitCounter = 0;
velX = 0;
velY = 0;
counter = 10;
Speed = 0.2;
sizeX = 1;
sizeY = 1;
pixelateTimer = 70;
animState = 0;
transition = 0;
spd = 2.5
image_speed = 0;
</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>///Animations
if(sprite_index == sXCrystal &amp;&amp; floor(image_index) == 14)
{
sprite_index = sHXPickup;
image_index = 0;
image_speed = 0.15
}
if(xShake == 1)
{
x = x + 1;
PlaySoundMono(sndCrystalShake);
xShake = 2;
}
else if(xShake == 2)
{
xShake = 3;
}
else if(xShake == 3)
{
x = x - 1;
xShake = 0;
}
if(xShake == 4)
{
x = x - 1;
PlaySoundMono(sndCrystalShake2);
xShake = 5;
}
else if(xShake == 5)
{
xShake = 6;
}
else if(xShake == 6)
{
x = x + 1;
xShake = 0;
}
if(xShake == 7)
{
x = x - 1;
xShake = 8;
}
else if(xShake == 8)
{
xShake = 9;
}
else if(xShake == 9)
{
x = x + 1;
xShake = 7;
}
if(transition == 1)
{
if(pixelateTimer == 70) {
PlaySoundMono(sndXMorph2);
sizeX = 2;
sizeY = 2;
}
if(pixelateTimer &gt; 0) pixelateTimer --;
if(pixelateTimer &gt;= 30)
{
image_xscale += 0.025;
image_yscale += 0.025;
}
else if(pixelateTimer &gt;= 10)
{
sizeX -= 0.05;
sizeY -= 0.05;
if(sizeX &lt; 1) sizeX = 1;
if(sizeY &lt; 1) sizeY = 1;
}
}
if(transition == 2)
{
if(pixelateTimer == 115) PlaySoundMono(sndXMorph1);
if(pixelateTimer &gt; 0) pixelateTimer --;
if(pixelateTimer &gt; 60)
{
sizeX += 0.09;
sizeY += 0.06;
}
else if(pixelateTimer &gt; 0)
{
if(pixelateTimer == 60)
{
sprite_index = sHornoadXFall;
image_speed = 0;
}
sizeX -= 0.09;
sizeY -= 0.06;
}
}
</string>
</argument>
</arguments>
</action>
<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>///Movement
if(stage == 1)
{
var ang = point_direction(x,y,targetx,targety);
velX += lengthdir_x(Speed,ang);
velY += lengthdir_y(Speed,ang);
velX = clamp(velX,-3,3);
velY = clamp(velY,-3,3);
x += velX;
y += velY;
}
if(stage == 2)
{
if(point_distance(x,y,oEndingHornoad.x,oEndingHornoad.y-12) &gt; 2)
{
dir = point_direction(x, y, oEndingHornoad.x, oEndingHornoad.y-14)
x += lengthdir_x(2.5, dir)
y += lengthdir_y(2.5, dir)
}
else
{
stage = 3;
sprite_index = sXInfect;
PlaySoundMono(sndXInfect);
image_index = 0;
image_speed = 1/6;
}
}
if(stage == 3)
{
if(image_index &lt; 8)
{
x = oEndingHornoad.x;
y = oEndingHornoad.y-14;
}
else
{
image_speed = 0;
image_xscale = 0;
image_yscale = 0;
y = oEndingHornoad.y - 8;
stage = 0;
}
}
if(stage == 4)
{
if(point_distance(x,y,128,144) &gt; 1)
{
spd -= 0.1;
dir = point_direction(x, y, 128, 144)
x += lengthdir_x(spd, dir)
y += lengthdir_y(spd, dir)
}
else stage = 5;
}
if(stage == 5)
{
transition = 2;
}
</string>
</argument>
</arguments>
</action>
</event>
<event eventtype="7" enumb="4">
<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>timeline_index = timelineCrystal;
timeline_position = 0;
timeline_running = true;
timeline_loop = false;
</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>if(transition == 1 || stage == 5)
{
draw_sprite_pixelated(sprite_index, -1, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha, sizeX, sizeY, 64);
}
else draw_self();
</string>
</argument>
</arguments>
</action>
</event>
</events>
<PhysicsObject>0</PhysicsObject>
<PhysicsObjectSensor>0</PhysicsObjectSensor>
<PhysicsObjectShape>1</PhysicsObjectShape>
<PhysicsObjectDensity>0</PhysicsObjectDensity>
<PhysicsObjectRestitution>0</PhysicsObjectRestitution>
<PhysicsObjectGroup>0</PhysicsObjectGroup>
<PhysicsObjectLinearDamping>0</PhysicsObjectLinearDamping>
<PhysicsObjectAngularDamping>0</PhysicsObjectAngularDamping>
<PhysicsObjectFriction>0</PhysicsObjectFriction>
<PhysicsObjectAwake>0</PhysicsObjectAwake>
<PhysicsObjectKinematic>0</PhysicsObjectKinematic>
<PhysicsShapePoints/>
</object>