Esempio n. 1
0
    def custom_init(self, nart):
        mydungeon = dungeonmaker.DungeonMaker(nart,
                                              self,
                                              self.elements["METROSCENE"],
                                              "Test Dungeon",
                                              gharchitecture.StoneBuilding(),
                                              10,
                                              monster_tags=("ANIMAL", "CITY",
                                                            "VERMIN"))
        self.elements["LOCALE"] = mydungeon.entry_level
        print(mydungeon.entry_level)

        myanchor = random.choice(pbge.randmaps.anchors.EDGES)
        foyer = self.register_element('_introom',
                                      pbge.randmaps.rooms.ClosedRoom(
                                          anchor=myanchor, ),
                                      dident="LOCALE")

        mycon2 = plotutility.TownBuildingConnection(
            nart,
            self,
            self.elements["METROSCENE"],
            mydungeon.entry_level,
            room2=foyer,
            door1=ghwaypoints.UndergroundEntrance(name="The Ruins"),
            door2=ghwaypoints.StoneStairsUp(
                anchor=pbge.randmaps.anchors.middle))

        return True
    def custom_init(self, nart):
        # Add the interior scene.
        team1 = teams.Team(name="Player Team")
        team2 = teams.Team(name="Civilian Team",
                           faction=self.elements["METRO_FACTION"])
        intscene = gears.GearHeadScene(
            35,
            35,
            "Fallout Shelter",
            player_team=team1,
            civilian_team=team2,
            attributes=(gears.tags.SCENE_PUBLIC, gears.tags.SCENE_BUILDING,
                        gears.tags.SCENE_GOVERNMENT, gears.tags.SCENE_RUINS),
            scale=gears.scale.HumanScale)
        intscenegen = pbge.randmaps.SceneGenerator(
            intscene, gharchitecture.DefaultBuilding())
        self.register_scene(nart,
                            intscene,
                            intscenegen,
                            ident="INTERIOR",
                            dident="LOCALE")
        foyer = self.register_element(
            '_introom',
            pbge.randmaps.rooms.ClosedRoom(
                anchor=pbge.randmaps.anchors.south, ),
            dident="INTERIOR")

        mycon2 = plotutility.TownBuildingConnection(
            self,
            self.elements["LOCALE"],
            intscene,
            room2=foyer,
            door1=ghwaypoints.UndergroundEntrance(name="Fallout Shelter"))

        npc = self.register_element(
            "LEADER",
            gears.selector.random_character(
                self.rank,
                local_tags=self.elements["LOCALE"].attributes,
                job=gears.jobs.ALL_JOBS["Mayor"],
                faction=self.elements["METRO_FACTION"]))
        npc.place(intscene, team=team2)

        self.town_origin_ready = True

        bodyguard = self.register_element(
            "BODYGUARD",
            gears.selector.random_character(
                self.rank,
                local_tags=self.elements["LOCALE"].attributes,
                job=gears.jobs.choose_random_job(
                    (gears.tags.Adventurer, ),
                    self.elements["LOCALE"].attributes),
                faction=self.elements["METRO_FACTION"]))
        bodyguard.place(intscene, team=team2)

        return True