Files
AM2R-Community-Updates/objects/oShielder.object.gmx
2020-12-22 20:54:55 -06:00

307 lines
8.5 KiB
XML

<!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!-->
<object>
<spriteName>sShielder</spriteName>
<solid>0</solid>
<visible>-1</visible>
<depth>-3</depth>
<persistent>0</persistent>
<parentName>oEnemy</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>action_inherited();
canbeX = 0;
makeActive();
setCollisionBounds(-8, -8, 8, 8);
myhealth = 50;
damage = 30;
stuntime = 4;
hpush = 6;
vpush = -3;
hitmissileexpl = 0;
hitsound = sndRobotHit1;
deathsound = sndRobotExpl;
canfreeze = 1;
platyoffset = -6;
frozenspr = sShielderFrozen;
flipx = 0;
target = 0;
state = 0;
statetime = 0;
myobj = instance_create(x, y, oShielderShield);
movedir = 1;
alarm[0] = 60 + random(200);
firedelay = 200 + random(100);
firerange = 200;
hitemp = 1;
empspr = sShielderDisabled;
shield_angle = 0;
shield_img = 0;
shield_present = 1;
</string>
</argument>
</arguments>
</action>
</event>
<event eventtype="1" 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 (instance_exists(myobj)) with (myobj) instance_destroy();
</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>movedir = -movedir;
alarm[0] = 60 + random(200);
</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>action_inherited();
enemy_active_check(70);
enemy_target_check(firerange, 1);
if (active == 1 &amp;&amp; stun == 0 &amp;&amp; frozen == 0 &amp;&amp; state != 100) {
if (state == 0) {
if (statetime &gt;= firedelay) {
if (target == 1) {
state = 1;
statetime = 0;
firedelay = 200 + random(200);
} else statetime = 1;
}
if (oCharacter.x &lt; x) {
xVel += 0.05 * movedir;
} else xVel -= 0.05 * movedir;
if (xVel &gt; false &amp;&amp; position_meeting(x + 20, y, oShielder)) xVel = -2;
if (xVel &lt; false &amp;&amp; position_meeting(x - 20, y, oShielder)) xVel = 2;
if (xVel &gt; 2) xVel = 2;
if (xVel &lt; -2) xVel = -2;
if (yVel &gt; 2) yVel = 2;
if (yVel &lt; -2) yVel = -2;
}
if (state == 1) {
if (statetime == 0) {
xVel = 0;
yVel = 0;
proj = instance_create(x, y + 7, oGunzooProj2);
}
if (statetime &gt;= 60) {
state = 0;
statetime = 0;
}
}
if (stun == 0) moveTo(xVel, yVel);
} // if (active == 1 &amp;&amp; stun == 0 &amp;&amp; frozen == 0 &amp;&amp; state != 100)
if (state == 100) {
enemy_death2();
repeat (20) instance_create(x, y, oDebris);
}
if (instance_exists(myobj)) {
myobj.x = x;
myobj.y = y;
}
statetime += 1;
</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_inherited();
if (yVel != 0) {
if (other.direction == 0 || other.direction == 45 || other.direction == 315) xVel += 1.8;
if (other.direction == 180 || other.direction == 135 || other.direction == 225) xVel -= 1.8;
}
</string>
</argument>
</arguments>
</action>
</event>
<event eventtype="4" ename="oBatteryExpl">
<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 (instance_exists(myobj)) {
deb = instance_create(x, y, oDebris);
deb.sprite_index = sShielderShield;
deb.depth = -4;
deb.image_angle = myobj.image_angle;
deb.image_index = myobj.image_index;
deb.image_speed = 0;
}
event_inherited();
</string>
</argument>
</arguments>
</action>
</event>
<event eventtype="7" enumb="25">
<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 (instance_exists(myobj)) {
shield_present = 1;
shield_angle = myobj.image_angle;
shield_img = myobj.image_index;
} else shield_present = 0;
event_inherited();
if (shield_present) {
frz.spr1 = sShielderShieldFrozen;
frz.spr1xoff = 0;
frz.spr1yoff = 0;
frz.spr1a = shield_angle;
frz.spr1i = shield_img;
}
</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>action_inherited();
if (random(2) &lt; 0.2) instance_create(x, y, oDebris);
</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>