def server_build_unit(self, pid, tid, vid, uid, buid): # print "building unit", pid, tid, vid, uid client = Objects.get_client() player = client.players[pid] if uid not in player.underConstruction.keys(): client.build_unit(tid, player, vid=vid, uid=uid) return {}
def server_on_attack(self, tpid, tuid, val): # print "server_on_attack", tpid,tuid,val client = Objects.get_client() p = client.players[tpid] if tuid in p.units.keys(): p.units[tuid].client_on_attack(val) return {}
def server_build_unit(self, pid, tid, vid, uid,buid): # print "building unit", pid, tid, vid, uid client = Objects.get_client() player = client.players[pid] if uid not in player.underConstruction.keys(): client.build_unit(tid, player, vid=vid, uid=uid) return {}
def server_on_attack(self,tpid,tuid,val): # print "server_on_attack", tpid,tuid,val client = Objects.get_client() p = client.players[tpid] if tuid in p.units.keys(): p.units[tuid].client_on_attack(val) return {}
def server_start_game(self): ''' The client stub that gets called when the server starts the game ''' client = Objects.get_client() client._init_players() client.start_game() return {}
def join_game(self): constants.MULTIPLAYER = True utils.play_sound("Enter.wav") c = Objects.get_client() c.start_server() # start client server connection = c.server_connect() # connect to game server if not connection: c.stop_server() menu_player.stop() self.game_started = True
def server_update_health(self, pid, uid, h, tid,vid): # print "update_health", pid, uid, h client = Objects.get_client() player = client.players[pid] if uid not in player.underConstruction.keys(): unit = client.build_unit(tid,player,vid=vid,uid=uid) else: unit = player.underConstruction[uid] unit.health = h client._complete_build(unit, player, uid) return {}
def server_update_health(self, pid, uid, h, tid, vid): # print "update_health", pid, uid, h client = Objects.get_client() player = client.players[pid] if uid not in player.underConstruction.keys(): unit = client.build_unit(tid, player, vid=vid, uid=uid) else: unit = player.underConstruction[uid] unit.health = h client._complete_build(unit, player, uid) return {}
def server_animate_attack(self,pid,uid,tpid,tuid,path): #if no path, stop attacking # print "server_animate_attack",pid,uid, tpid,tuid,path client = Objects.get_client() if (uid in client.players[pid].units.keys()): attacker = client.players[pid].units[uid] if tpid == -1 or tuid == -1: attacker.end_attack(True) elif path: target = client.players[tpid].units[tuid] attacker.attackingPath = path if not attacker.is_attacking: attacker.client_attack(target,client.map) return {}
def server_animate_attack(self, pid, uid, tpid, tuid, path): #if no path, stop attacking # print "server_animate_attack",pid,uid, tpid,tuid,path client = Objects.get_client() if (uid in client.players[pid].units.keys()): attacker = client.players[pid].units[uid] if tpid == -1 or tuid == -1: attacker.end_attack(True) elif path: target = client.players[tpid].units[tuid] attacker.attackingPath = path if not attacker.is_attacking: attacker.client_attack(target, client.map) return {}
def server_add_player(self, pid): # print "server add player" client = Objects.get_client() client.playerList.append(pid) return {}
def server_move_troop(self, pid, uid, vid, path): # print "server move unit", pid, vid, uid, path client = Objects.get_client() path = client.move_unit(client.players[pid].units[uid], path) return {}
def client_remove_unit(self,pid,uid): # print "remove unit", pid, uid client = Objects.get_client() unit = client.players[pid].units[uid] unit.destroy_action() return {}
def server_update_location(self, pid, uid, vid): client = Objects.get_client() p = client.players[pid] curVertex = client.map.vertices[str(vid)] client.update_location(p.units[uid], curVertex.position, curVertex) return {}
def client_remove_unit(self, pid, uid): # print "remove unit", pid, uid client = Objects.get_client() unit = client.players[pid].units[uid] unit.destroy_action() return {}