Example #1
0
def script_create(widget, event, self):
	# Save Config Values
	Config.save(self,self.conf,self.conf_temp)

	# Player Name
	my_player_name = Config.get_option(self.conf_temp, 'GAME', 'name', 'Player')
	# Player Number
	my_player_number = '0' # TODO -> HardCoded till get Lobby added
	# Number of Players
	num_of_players = '1'   # TODO -> HardCoded till get Lobby added
	# Team Data
	team_count, team_list, bad_team_list, ally_count, ally_list, bad_ally_list = team_ally_convert_list(self)
	if team_count != -1:

			# Map Name
	 	treeselection = self.map_treeview.get_selection()
		(model, iter) = treeselection.get_selected()
		map_name = self.map_liststore.get_value(iter, 0)

			# Mod Name
	 	treeselection = self.mod_treeview.get_selection()
		(model, iter) = treeselection.get_selected()
		mod_name = Index_Mod.mod_archive(self, self.mod_liststore.get_value(iter, 1))

			# Player / AI info
		treeiter = self.player_liststore.get_iter_first()
		if treeiter != None:
			ai_location = []
			bonus = []
			sides = []
			spectator = '1'
			while treeiter != None:
				if self.player_liststore.get_value(treeiter, 1) == my_player_name:
					my_player_team = str(self.player_liststore.get_value(treeiter,2))
					for i in range(0,len(bad_team_list)):
						if bad_team_list[i] == int(my_player_team):
							my_player_team = str(team_list[i])
					spectator = '0'

				sides.append(self.player_liststore.get_value(treeiter, 3))
				bonus.append(self.player_liststore.get_value(treeiter, 5))
				ai_location.append(self.player_liststore.get_value(treeiter, 8))

				treeiter = self.player_liststore.iter_next(treeiter)

			# Making Script.txt
			fd_game = open(Config.get_option(self.ini, self.profile, 'SPRING_SCRIPT', ''),'w+')
			fd_game.write('[GAME]\n')
			fd_game.write ('{\n')
			fd_game.write ('Mapname=' + map_name + '.smf'+ ';\n')
			fd_game.write ('StartMetal=' + str(self.start_metal_spinner.get_value_as_int()) + ';\n')
			fd_game.write ('StartEnergy=' + str(self.start_energy_spinner.get_value_as_int()) + ';\n')
			fd_game.write ('MaxUnits=' + str(self.max_units_spinner.get_value_as_int()) + ';\n')
			fd_game.write ('GameType=' + mod_name + ';\n')
			fd_game.write ('GameMode=' + str(self.game_mode.get_active()) + ';\n')
			fd_game.write ('StartPosType=' + str(self.starting_positions.get_active()) + ';\n')
			fd_game.write ('MyPlayerNum=' + my_player_number + ';\n')
			fd_game.write ('NumPlayers=' + num_of_players + ';\n')
			fd_game.write ('NumTeams=' + str(len(team_count)) + ';\n')
			fd_game.write ('NumAllyTeams=' + str(len(team_count)) + ';\n')

			# Player
			fd_game.write ('[PLAYER0]\n')
			fd_game.write ('{\n')
			fd_game.write ('name=' + my_player_name + ';\n')
			fd_game.write ('Spectator='+ spectator + '/1;\n')
			if spectator == '0':
				fd_game.write ('team=' + my_player_team + ';\n')
			fd_game.write ('}\n')

			# Teams
			for i in range(0,(len(team_count))):
				fd_game.write ('[TEAM' + str(i) + ']\n')
				fd_game.write ('{\n')
				fd_game.write ('TeamLeader=0;\n') # TODO  Lobby Code / Teams / AI Owner
				fd_game.write ('Color=' + str(i) + ';\n')  # TODO Color
				fd_game.write ('Handicap=' + str(bonus[i]) + ';\n')


				fd_game.write ('AllyTeam=' + str(ally_list[i]) + ';\n')
				fd_game.write ('Side='+ sides[i] + ';\n')
				if ai_location[i] != None:
					fd_game.write('AiDLL=' + ai_location[i] + ';\n')
				fd_game.write ('}\n')


			# Ally Teams
			for i in range(0,len(ally_count)):
				fd_game.write ('[ALLYTEAM' + str(ally_count[i]) + ']\n')
				fd_game.write ('{\n')
				fd_game.write ('NumAllies=0;\n') # What the hell is this for??????/
				fd_game.write ('}\n')


			fd_game.write ('}\n')
			fd_game.close()
	start(self)
Example #2
0
def script_create(widget, event, self):
    # Save Config Values
    Config.save(self, self.conf, self.conf_temp)

    # Player Name
    my_player_name = Config.get_option(self.conf_temp, 'GAME', 'name',
                                       'Player')
    # Player Number
    my_player_number = '0'  # TODO -> HardCoded till get Lobby added
    # Number of Players
    num_of_players = '1'  # TODO -> HardCoded till get Lobby added
    # Team Data
    team_count, team_list, bad_team_list, ally_count, ally_list, bad_ally_list = team_ally_convert_list(
        self)
    if team_count != -1:

        # Map Name
        treeselection = self.map_treeview.get_selection()
        (model, iter) = treeselection.get_selected()
        map_name = self.map_liststore.get_value(iter, 0)

        # Mod Name
        treeselection = self.mod_treeview.get_selection()
        (model, iter) = treeselection.get_selected()
        mod_name = Index_Mod.mod_archive(self,
                                         self.mod_liststore.get_value(iter, 1))

        # Player / AI info
        treeiter = self.player_liststore.get_iter_first()
        if treeiter != None:
            ai_location = []
            bonus = []
            sides = []
            spectator = '1'
            while treeiter != None:
                if self.player_liststore.get_value(treeiter,
                                                   1) == my_player_name:
                    my_player_team = str(
                        self.player_liststore.get_value(treeiter, 2))
                    for i in range(0, len(bad_team_list)):
                        if bad_team_list[i] == int(my_player_team):
                            my_player_team = str(team_list[i])
                    spectator = '0'

                sides.append(self.player_liststore.get_value(treeiter, 3))
                bonus.append(self.player_liststore.get_value(treeiter, 5))
                ai_location.append(self.player_liststore.get_value(
                    treeiter, 8))

                treeiter = self.player_liststore.iter_next(treeiter)

            # Making Script.txt
            fd_game = open(
                Config.get_option(self.ini, self.profile, 'SPRING_SCRIPT', ''),
                'w+')
            fd_game.write('[GAME]\n')
            fd_game.write('{\n')
            fd_game.write('Mapname=' + map_name + '.smf' + ';\n')
            fd_game.write('StartMetal=' +
                          str(self.start_metal_spinner.get_value_as_int()) +
                          ';\n')
            fd_game.write('StartEnergy=' +
                          str(self.start_energy_spinner.get_value_as_int()) +
                          ';\n')
            fd_game.write('MaxUnits=' +
                          str(self.max_units_spinner.get_value_as_int()) +
                          ';\n')
            fd_game.write('GameType=' + mod_name + ';\n')
            fd_game.write('GameMode=' + str(self.game_mode.get_active()) +
                          ';\n')
            fd_game.write('StartPosType=' +
                          str(self.starting_positions.get_active()) + ';\n')
            fd_game.write('MyPlayerNum=' + my_player_number + ';\n')
            fd_game.write('NumPlayers=' + num_of_players + ';\n')
            fd_game.write('NumTeams=' + str(len(team_count)) + ';\n')
            fd_game.write('NumAllyTeams=' + str(len(team_count)) + ';\n')

            # Player
            fd_game.write('[PLAYER0]\n')
            fd_game.write('{\n')
            fd_game.write('name=' + my_player_name + ';\n')
            fd_game.write('Spectator=' + spectator + '/1;\n')
            if spectator == '0':
                fd_game.write('team=' + my_player_team + ';\n')
            fd_game.write('}\n')

            # Teams
            for i in range(0, (len(team_count))):
                fd_game.write('[TEAM' + str(i) + ']\n')
                fd_game.write('{\n')
                fd_game.write(
                    'TeamLeader=0;\n')  # TODO  Lobby Code / Teams / AI Owner
                fd_game.write('Color=' + str(i) + ';\n')  # TODO Color
                fd_game.write('Handicap=' + str(bonus[i]) + ';\n')

                fd_game.write('AllyTeam=' + str(ally_list[i]) + ';\n')
                fd_game.write('Side=' + sides[i] + ';\n')
                if ai_location[i] != None:
                    fd_game.write('AiDLL=' + ai_location[i] + ';\n')
                fd_game.write('}\n')

            # Ally Teams
            for i in range(0, len(ally_count)):
                fd_game.write('[ALLYTEAM' + str(ally_count[i]) + ']\n')
                fd_game.write('{\n')
                fd_game.write(
                    'NumAllies=0;\n')  # What the hell is this for??????/
                fd_game.write('}\n')

            fd_game.write('}\n')
            fd_game.close()
    start(self)