def broken(self): for feeler in self.feelers: feeler.remove() for feelerShot in self.feelerShots: feelerShot.remove() for cell in self.bossCells: if cell.removeFlag == False: cell.remove() self.remove() enemy.removeEnemyShot() ObjMgr.objs.append( boss.BossExplosion(gcommon.getCenterX(self), gcommon.getCenterY(self), gcommon.C_LAYER_EXP_SKY)) GameSession.addScore(self.score) BGM.sound(gcommon.SOUND_LARGE_EXP) enemy.Splash.append(gcommon.getCenterX(self), gcommon.getCenterY(self), gcommon.C_LAYER_EXP_SKY) if self.isBossRush: gcommon.debugPrint("Boss2 call NextEvent") if self.timerObj != None: self.timerObj.stop() self.timerObj = None ObjMgr.objs.append(enemy.NextEvent([0, None, 240])) else: ObjMgr.objs.append(enemy.Delay(enemy.StageClear, None, 240))
def broken(self): gcommon.breakObjects(self.bat1List) gcommon.breakObjects(self.worm4List) self.setState(100) self.shotHitCheck = False self.hitCheck = False enemy.removeEnemyShot() GameSession.addScore(self.score) BGM.sound(gcommon.SOUND_LARGE_EXP) enemy.Splash.append(self.x + 59, self.y + 64, gcommon.C_LAYER_EXP_SKY) ObjMgr.objs.append(enemy.Delay(enemy.StageClear, None, 200))
def checkMyShipCollision(self): if gcommon.check_collision(self, ObjMgr.myShip): self.hitCheck = False if self.state == 0: # しばらくすると当たり判定 self.setState(1) else: self.setState(3) BGM.sound(gcommon.SOUND_ITEM_GET, gcommon.SOUND_CH2) if self.hide: GameSession.addScore(1000) else: GameSession.addScore(500) return False
def broken(self): self.remove() enemy.removeEnemyShot() ObjMgr.objs.append(boss.BossExplosion(gcommon.getCenterX(self), gcommon.getCenterY(self), gcommon.C_LAYER_EXP_SKY)) GameSession.addScore(self.score) BGM.sound(gcommon.SOUND_LARGE_EXP) enemy.Splash.append(gcommon.getCenterX(self), gcommon.getCenterY(self), gcommon.C_LAYER_EXP_SKY) if self.isBossRush: if self.timerObj != None: self.timerObj.stop() self.timerObj = None ObjMgr.objs.append(enemy.NextEvent([0, None, 120])) else: ObjMgr.objs.append(enemy.Delay(enemy.StageClear, None, 240))
def broken(self): self.mode = 2 self.setState(0) self.hitCheck = False self.shotHitCheck = False self.removeAllShot() enemy.removeEnemyShot() BGM.sound(gcommon.SOUND_LARGE_EXP) enemy.Splash.append(gcommon.getCenterX(self), gcommon.getCenterY(self), gcommon.C_LAYER_EXP_SKY) GameSession.addScore(self.score) if self.isBossRush: if self.timerObj != None: self.timerObj.stop() self.timerObj = None
def broken(self): GameSession.addScore(self.score) enemy.create_explosion2(self.x + (self.right + self.left + 1) / 2, self.y + (self.bottom + self.top + 1) / 2, self.layer, self.exptype, self.expsound) self.remove() self.doExplosion() enemy.removeEnemyShot() if self.isBossRush: if self.timerObj != None: self.timerObj.stop() self.timerObj = None ObjMgr.objs.append(enemy.NextEvent([0, None, 120])) else: ObjMgr.objs.append(enemy.Delay(enemy.StageClear, None, 180))
def doShotCollision(self, shot): ret = super(BossLast1, self).doShotCollision(shot) if self.mode == 0: if self.brokenState == 0 and self.hp < BossLast1.hp2: # 初期状態⇒先端が欠けた状態 self.brokenState = 1 enemy.create_explosion(self.x +32+32, self.y +64+16+16, gcommon.C_LAYER_GRD, gcommon.C_EXPTYPE_GRD_M) GameSession.addScore(1000) elif self.brokenState == 1 and self.hp < BossLast1.hp3: # 先端が欠けた状態⇒コアむき出し状態 self.brokenState = 2 self.mode = 1 self.setState(0) self.removeAllShot() enemy.create_explosion(self.x +32+32, self.y +64+16+16, gcommon.C_LAYER_GRD, gcommon.C_EXPTYPE_GRD_M) enemy.Splash.append(self.x +32+32+24, self.y +64+16+16, gcommon.C_LAYER_EXP_SKY) GameSession.addScore(3000) return ret