def update(self, delta): #self.vehicle = entity.Enemy(self.vehicle) target = entity_control.get_entity(self.target_id) if target: self.vehicle.target_pos = target.pos
def update(self, update): target = entity_control.get_entity(self.target_id) if target: diff = target.pos - self.vehicle.pos if self.chase_state == None: self.vehicle.socket_logic(Enemy_Basic_Chaser_Logic(self.target_id), 'move') self.chase_state = True if diff.mag() < 150 and self.chase_state: self.vehicle.socket_logic(Enemy_Basic_Orbit_Logic(self.target_id, 75), 'move') self.chase_state = False elif diff.mag() > 200 and not self.chase_state: self.vehicle.socket_logic(Enemy_Basic_Chaser_Logic(self.target_id), 'move') self.chase_state = True
def update(self, delta): #self.vehicle = entity.Enemy(self.vehicle) target = entity_control.get_entity(self.target_id) if target: #self.range = self.vehicle.target_pos - self.vehicle.pos if self.dir == None: diff = target.pos - self.vehicle.pos self.dir = atan2(diff.y, diff.x) + randint(-10,10)*pi/20.0 self.dir -= 0.0015*delta*self.clockwise self.dir = (self.dir if self.dir < 2*pi else self.dir-2*pi) self.dir = (self.dir if self.dir > 2*pi else self.dir+2*pi) self.vehicle.target_pos = Pnt(cos(self.dir), sin(self.dir)) * self.range + target.pos
def collide(self, target_id, contact_pnt): if entity_control.get_entity(target_id).type == 'enemy': entity_control.kill_entity(self.id)