home *** CD-ROM | disk | FTP | other *** search
- property pDirection, pMovementSpeed, pFrameNumber, pAnimationSpeed, pPositionX, pPositionY, pAntChannel, pFakeChannel, pLockedDirection, pMaxFrameNumer, pDoDeath, pHealth, pEnergy
- global gMapChannel, gCurrentLevel
-
- on new me, antDirection, antSpeed, animationSpeed, posX, posY, antChannel
- pHealth = 48
- pEnergy = 48
- pMaxFrameNumer = 4
- pDirection = antDirection
- pMovementSpeed = antSpeed
- if gCurrentLevel = 1 then
- pMovementSpeed = 4
- end if
- if gCurrentLevel = 2 then
- pMovementSpeed = 4
- end if
- if gCurrentLevel = 3 then
- pMovementSpeed = 5
- end if
- if gCurrentLevel = 4 then
- pMovementSpeed = 6
- end if
- pAnimationSpeed = animationSpeed
- pAntChannel = antChannel
- pPositionX = posX
- pPositionY = posY
- pFrameNumber = 1
- sprite(pAntChannel).locH = pPositionX
- sprite(pAntChannel).locV = pPositionY
- sprite(pAntChannel).member = "alien_left1"
- pLockedDirection = 0
- pFakeChannel = 12
- return me
- end
-
- on checkAntColision me
- end
-
- on getAntChannel me
- return pAntChannel
- end
-
- on moveAnt me
- case pDirection of
- 1:
- pPositionY = pPositionY - pMovementSpeed
- 2:
- pPositionX = pPositionX + pMovementSpeed
- 3:
- pPositionY = pPositionY + pMovementSpeed
- 4:
- pPositionX = pPositionX - pMovementSpeed
- 5:
- pPositionY = pPositionY - pMovementSpeed
- pPositionX = pPositionX - pMovementSpeed
- 6:
- pPositionY = pPositionY - pMovementSpeed
- pPositionX = pPositionX + pMovementSpeed
- 7:
- pPositionY = pPositionY + pMovementSpeed
- pPositionX = pPositionX - pMovementSpeed
- 8:
- pPositionY = pPositionY + pMovementSpeed
- pPositionX = pPositionX + pMovementSpeed
- end case
- stringLength = length(string(member(sprite(pAntChannel).member).name))
- currFrame = chars(string(member(sprite(pAntChannel).member).name), stringLength, stringLength)
- currFrame = integer(currFrame) + 1
- if (currFrame mod 2) = 0 then
- puppetSound(1, "run")
- end if
- if currFrame > pMaxFrameNumer then
- currFrame = 1
- end if
- sprite(pAntChannel).member = chars(string(member(sprite(pAntChannel).member).name), 1, stringLength - 1) & string(currFrame)
- if pPositionY > 400 then
- pPositionY = 400
- end if
- if pPositionY < 0 then
- pPositionY = 0
- end if
- if pPositionX > 580 then
- pPositionX = 580
- end if
- if pPositionX < 0 then
- pPositionX = 0
- end if
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- case pDirection of
- 1:
- pPositionY = pPositionY + pMovementSpeed
- pPositionY = pPositionY - pMovementSpeed
- pPositionX = pPositionX + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionY = pPositionY + pMovementSpeed
- pPositionX = pPositionX - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- pPositionY = pPositionY - pMovementSpeed
- pPositionX = pPositionX - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionY = pPositionY + pMovementSpeed
- pPositionX = pPositionX + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- end if
- end if
- 2:
- pPositionX = pPositionX - pMovementSpeed
- pPositionY = pPositionY - pMovementSpeed
- pPositionX = pPositionX + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionY = pPositionY + pMovementSpeed
- pPositionX = pPositionX - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- pPositionY = pPositionY + pMovementSpeed
- pPositionX = pPositionX + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionY = pPositionY - pMovementSpeed
- pPositionX = pPositionX - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- end if
- end if
- 3:
- pPositionY = pPositionY - pMovementSpeed
- pPositionY = pPositionY + pMovementSpeed
- pPositionX = pPositionX + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionY = pPositionY - pMovementSpeed
- pPositionX = pPositionX - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- pPositionY = pPositionY + pMovementSpeed
- pPositionX = pPositionX - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionY = pPositionY - pMovementSpeed
- pPositionX = pPositionX + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- end if
- end if
- 4:
- pPositionX = pPositionX + pMovementSpeed
- pPositionY = pPositionY - pMovementSpeed
- pPositionX = pPositionX - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionY = pPositionY + pMovementSpeed
- pPositionX = pPositionX + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- pPositionY = pPositionY + pMovementSpeed
- pPositionX = pPositionX - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionY = pPositionY - pMovementSpeed
- pPositionX = pPositionX + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- end if
- end if
- 5:
- pPositionY = pPositionY + pMovementSpeed
- pPositionX = pPositionX + pMovementSpeed
- pPositionY = pPositionY - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionY = pPositionY + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- pPositionX = pPositionX - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionX = pPositionX + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- end if
- end if
- 6:
- pPositionY = pPositionY + pMovementSpeed
- pPositionX = pPositionX - pMovementSpeed
- pPositionY = pPositionY - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionY = pPositionY + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- pPositionX = pPositionX + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionX = pPositionX - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- end if
- end if
- 7:
- pPositionY = pPositionY - pMovementSpeed
- pPositionX = pPositionX + pMovementSpeed
- pPositionY = pPositionY + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionY = pPositionY - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- pPositionX = pPositionX - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionX = pPositionX + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- end if
- end if
- 8:
- pPositionY = pPositionY - pMovementSpeed
- pPositionX = pPositionX - pMovementSpeed
- pPositionY = pPositionY + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionY = pPositionY - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- pPositionX = pPositionX + pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- if sprite(13).intersects(7) = 1 then
- pPositionX = pPositionX - pMovementSpeed
- sprite(13).loc = point(pPositionX, pPositionY)
- updateStage()
- end if
- end if
- end case
- sprite(13).loc = point(pPositionX, pPositionY)
- end if
- sprite(pAntChannel).loc = sprite(13).loc
- sprite(11).loc = sprite(13).loc
- end
-
- on setAntPosition me, posX, posY
- pPositionX = posX
- pPositionY = posY
- sprite(pAntChannel).locH = pPositionX
- sprite(pAntChannel).locV = pPositionY
- end
-
- on getAntPositionX me
- return pPositionX
- end
-
- on getAntPositionY me
- return pPositionY
- end
-
- on setAntDirection me, antDirection
- pDirection = antDirection
- tempDirection = sprite(pAntChannel).rotation
- case pDirection of
- 1:
- sprite(pAntChannel).member = "alien_up1"
- 2:
- sprite(pAntChannel).member = "alien_right1"
- 3:
- sprite(pAntChannel).member = "alien_down1"
- 4:
- sprite(pAntChannel).member = "alien_left1"
- 5:
- sprite(pAntChannel).member = "alien_up1"
- 6:
- sprite(pAntChannel).member = "alien_up1"
- 7:
- sprite(pAntChannel).member = "alien_down1"
- 8:
- sprite(pAntChannel).member = "alien_down1"
- end case
- end
-
- on getAntDirection me
- return pDirection
- end
-
- on doDeathAnimation me
- end
-
- on setHealth me, theHealth
- pHealth = theHealth
- if pHealth > 48 then
- pHealth = 48
- end if
- if pHealth < 0 then
- pHealth = 0
- end if
- sprite(284).right = sprite(284).left + pHealth
- end
-
- on getHealth me
- return pHealth
- end
-
- on setEnergy me, theEnergy
- pEnergy = theEnergy
- if pEnergy > 48 then
- pEnergy = 48
- end if
- if pEnergy < 0 then
- pEnergy = 0
- end if
- sprite(282).right = sprite(282).left + pEnergy
- end
-
- on getEnergy me
- return pEnergy
- end
-