Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -------------------------------
- -- /lib/registry
- -------------------------------
- --[[ REMOVE FROM HERE...
- --------------------------------------------------------------------------------------
- --- VARIABLES THAT AFFECT THE SPACE OF THE GAME AREA (SPAWN AREA, PLAY AREA AND CATALOGUE AREA TOGETHER)
- --------------------------------------------------------------------------------------
- --
- -- PLAY AREA
- --
- GRIDCELL_SIZE = 5 -- the width of one grid cell in minecraft blocks. MUST BE ODD NUMBER minimum is 3 maximum is 11
- GRIDCELL_COUNT = 10 -- the number of gridcells or slots across X and Z in one game. MUST BE between 5 and 10
- --
- -- CATALOGUE AREA
- --
- CATALOGUE_SLOTCOUNT = {
- x = 2, --the number of slots along the X axis
- z = 3 --the number of slots along the Z axis
- }
- --
- --
- --
- ------------------------------
- ---ADVANCED SETTINGS BELOW----
- ------------------------------
- --
- -- ADVANCED PLAY AREA SETTINGS
- --
- PLAY_AREA_OFFSET = { --TODO make this in blocks not gridcells, make it minimal and move it as a local variable in the respective packages, users dont need to change this
- x = 3, -- the number of grid cells along X the play area is offset from the edge of the spawn zone (the same is used of the CATALOGUE offset)
- z = 3 -- the number of grid cells along Z the play area is offset from the edge of the spawn zone (the negtive of this is used for the catalogue offset)
- }
- TRENCHES ={ --TODO make this minimal and move it as a local variable in the respective packages, users dont need to change this
- WIDTH = 1, -- in minecraft blocks how WIDE are trenches carved around the platforms of the play area, catalogue area and spawn area (from the edge out)
- DEPTH = 5 -- in minecraft blocks how DEEP are trenches carved around the platforms of the play area, catalogue area and spawn area (from level of computer down)
- }
- DO_GRID = true --this refers to the grid of detector blocks placed on the ground at the start of each new game
- GRID_HOLE_CHANCE = 0 --
- --BUILDZONE_FLOOR_HEIGHT = -1 --the elevation of the floor of the play area realtive to the computer elevation (along Y axis)
- --- this is the matrix or grid of play areas that are created in the world
- BUILDZONE_COUNT = {
- x = 1,
- z = 1
- }
- --- this is the matrix or grid of portals that are created in the world
- PORTAL_COUNT = {
- x = 1, --TODO assert(PORTAL_COUNT.x <= 3, "Portal count along X must be 1, 2 or 3")
- z = 1 --TODO assert(PORTAL_COUNT.z <= 3, "Portal count along Z must be 1, 2 or 3")
- }
- --the portals are the square areas in the spawn zone on which players jump to join a game in the corresponding buildzone
- PORTAL_SIZE = 5 -- in minecraft blocks, the size of the portals along X and Z, odd numbers look better
- PORTAL_OFFSET = 3 -- in minecraft blocks, the distance between the portals, odd numbers look better
- PORTAL_HEIGHT = 3 -- in minecraft blocks, the height of the portal zone
- --
- --GAME_FIELD_MAX = { --TODO move this to the package that handles buildzones ( or the one for queues?) NOTE: setGameSettings(game) refers to it and is used in Portal Package
- -- countX = 3, --don't change this, it must stay 3
- -- countZ = 3 --don't change this, it must stay 3
- --}
- --TODO if we want to mimic a Manhattan-like grid, offset along X must be different from offset along Z
- BUILDZONE_OFFSET = 0 -- in grid cells, the number of grid cells left between the buildzones
- --
- -- ADVANCED CATALOGUE AREA SETTINGS
- --
- CATALOGUE_SLOTSIZE = { --TODO make this in blocks not gridcells
- x = 3, -- the size of the slot defined as number of grid cells along X
- z = 3 -- the size of the slot defined as number of grid cells along Z
- }
- -- TODO make the offset in blocks not grid cells and move to the respective packages as local variable, users dont need to change this
- CATALOGUE_SLOT_OFFSET = 1 -- the number of grid cells left free between the slots, also used of the width of the edge of both catalogue and play area
- ELEMENT_HEIGHT = 29 --the maximum height of an element in the catalogue
- --
- -- ADVANCED SPAWN AREA
- --
- --the spawn area consists of one large area for the spawn of everyone, both ops and adventure players and
- -- a dispatching area with portals that lead to a buildzone. for each buildzone there is a dedicated portal
- SPAWNZONE_SIZE = 39 -- in minecraft blocks, the size of the spawn zone
- --]] --TO HERE
- -- Status ( 0 = in game, 1 = quit with homecomer, 2 = left game )
- PLAYER_STATUS = {
- IN_GAME = 0,
- LEFT_WITH_HOMECOMER = 1,
- LEFT_OTHERWISE = 2
- }
- --[[
- -- Phase ( 1 = dormant, 2 = currently playing, 3 = game over, waiting for players to leave the buildzone )
- QUEUE_PHASE = {
- DORMANT = 1,
- PLAYING = 2,
- GAMEOVER = 3
- }
- --]]
- RECORDS_FOLDER = "/records/"
- BUILDZONES_LIST_FILE = RECORDS_FOLDER.."_buildzones-list.json"
- ------------------
- --OLDER STUFF
- -------------------
- DEBUG_MODE = true
- ANNOUNCE_ENGLISH = false
- ANNOUNCE_GERMAN = false
- SHOW_HIGHSCORES = false --maybe have debug mode highscroes and actual game highscores saved into files
- if not DEBUG_MODE then
- ANNOUNCE_ENGLISH = true --in actual play mode at least english messages will be displayed
- SHOW_HIGHSCORES = true --in play mode always show the highscores in the sidebar
- end
- CITY_VERSION = 1 -- this denotes which iteration of the map is current. When the map is full, i.e. all buildzones have been played we replace it with an empty one and increase the city version with 1
- SPAWN_VILLAGER = false
- PHASE_LENGTH_GAME = 600 --seconds a game lasts
- PHASE_LENGTH_WAIT = 15 --seconds to wait for players to stand in the yeloow box before starting a game
- PHASE_LENGTH_OVER = 15 --seconds to wait after a game is completing befor setting the buildzone to the next phase
- HOMECOMER_TYPE = "Pig"
- HOMECOMER_VALUE = 90 --90 is for pig
- MAX_PLAYERS_PER_GAME = 4
- MIN_BUILDINGS = 5 -- the minimum number of buildings a buildzone must have in order to be saved and no discarded at the end of a game
- DEFAULT_NAME = 'BUILDING'
- WOOL_PER_EMERALD = 64
- PICKAXE_USES = 40
- --[[
- BLOCKS = {
- AIR = {block='minecraft:air' ,variant=0},
- CAMP_FLOOR = {block='minecraft:sandstone' ,variant=0},
- WHITE_GRID = {block='minecraft:sandstone' ,variant=0},
- DARK_GRID = {block='minecraft:snow' ,variant=0},
- CONSTRUCTION = {block='minecraft:diamond_ore' ,variant=0},
- RING = {block='minecraft:diamond_ore' ,variant=0},
- DETECT = {block='minecraft:red_sandstone' ,variant=0},
- DETECT_DEAD = {block='minecraft:redstone_block' ,variant=0},
- VOCAB_DETECT = {block='minecraft:quartz_block' ,variant=0},
- VOCAB_REPLACE = {block='minecraft:coal_block' ,variant=0},
- VICTORY_MARKER = {block='minecraft:emerald_block' ,variant=0},
- PLUG = {block='minecraft:lapis_ore' ,variant=0},
- PHVFLOOR = {block='minecraft:stone_slab' ,variant=3},
- BUILDING_HOUSE = {block='minecraft:wool' ,variant=0},
- BUILDING_GARDEN = {block='minecraft:wool' ,variant=13},
- BUILDING_WATER = {block='minecraft:wool' ,variant=1},
- SPAWNZONE_FENCE = {block='minecraft:stained_glass' ,variant=0},
- _matWhiteSmooth = {block='mincreaft:stained_hardened_clay' ,variant=0},
- _matWhiteSmooth2 = {block='minecraft:brick_block' ,variant=0},
- _matYellowSmooth = {block='minecraft:stained_hardened_clay' ,variant=4},
- _matPinkSmooth = {block='minecraft:stained_hardened_clay' ,variant=6},
- _matBlueSmooth = {block='minecraft:stained_hardened_clay' ,variant=9},
- _matPurpleSmooth = {block='minecraft:stained_hardened_clay' ,variant=10},
- _matWhiteTextured = {block='minecraft:planks' ,variant=4},
- _matYellowTextured = {block='minecraft:planks' ,variant=1},
- _matPinkTextured = {block='minecraft:planks' ,variant=0},
- _matBlueTextured = {block='minecraft:planks' ,variant=2},
- _matPurpleTextured = {block='minecraft:planks' ,variant=5}
- }
- --]]
- --os.loadAPI('lib/utils')
- --os.loadAPI('lib/json')
- --[[
- local ox,oy,oz = commands.getBlockPosition()
- computer = {
- x = ox,
- y = oy,
- z = oz
- }
- ]]
- --[[
- -- function to check if settings file exist and if not create it using the default settings in registry
- --if settings file exists then read it and change the variables to reflect the settings there
- -- TODO move this to an IO package or to GameManager
- -- TODO we can use loadstring(txtfile) to read both default and local settings. then for each key in default if the key in local is nil use the default
- function loadCustomSettings()
- -- does json file exist?
- --local result = nil
- --fs.makeDir("/records")
- local filename = "settings"
- local settings = {}
- if utils.file_exists(filename) then
- ---read from file and change the settings
- settings = json.decodeFromFile(filename)
- --set the settings to the ones found in the file
- GRIDCELL_SIZE = settings.grid_cell_size
- GRIDCELL_COUNT = settings.grid_cell_count
- CATALOGUE_SLOTCOUNT = settings.catalogue_slot_count
- --PLAY_AREA_OFFSET = settings.play_area_offset
- --TRENCHES = settings.trenches
- DO_GRID = settings.do_grid
- GRID_HOLE_CHANCE = settings.grid_hole_chance
- --PLUG_LENGTH = settings.plug_length
- GAME_FIELD = settings.game_field
- BUILDZONE_OFFSET = settings.buildzone_offset
- CATALOGUE_SLOTSIZE = settings.catalogue_slot_size
- --CATALOGUE_SLOT_OFFSET = settings.catalogue_slot_offset
- --DEBUG_MODE = settings.debug_mode
- ANNOUNCE_ENGLISH = settings.announce_english
- ANNOUNCE_GERMAN = settings.announce_german
- --SHOW_HIGHSCORES = settings.show_highscores
- --CITY_VERSION = settings.city_version
- SPAWN_VILLAGER = settings.spawn_villager
- --NUMBER_OF_BUILDZONES = settings.number_of_buildzones
- PHASE_LENGTH_GAME = settings.phase_length_game
- PHASE_LENGTH_WAIT = settings.phase_length_wait
- PHASE_LENGTH_OVER = settings.phase_length_over
- --HOMECOMER_TYPE = settings.homecomer_type
- --HOMECOMER_VALUE = settings.homecomer_value
- --MAX_PLAYERS_PER_GAME = settings.max_players_per_game
- --MIN_BUILDINGS = settings.min_buildings
- else
- --create the file with default settings
- --collect the settings variables in one json object
- settings.grid_cell_size = GRIDCELL_SIZE
- settings.grid_cell_count = GRIDCELL_COUNT
- settings.catalogue_slot_count = CATALOGUE_SLOTCOUNT
- --settings.play_area_offset = PLAY_AREA_OFFSET
- --settings.trenches = TRENCHES
- settings.do_grid = DO_GRID
- settings.grid_hole_chance = GRID_HOLE_CHANCE
- --settings.plug_length = PLUG_LENGTH
- settings.game_field = GAME_FIELD
- settings.buildzone_offset = BUILDZONE_OFFSET
- settings.catalogue_slot_size = CATALOGUE_SLOTSIZE
- --settings.catalogue_slot_offset = CATALOGUE_SLOT_OFFSET
- --settings.debug_mode = DEBUG_MODE
- settings.announce_english = ANNOUNCE_ENGLISH
- settings.announce_german = ANNOUNCE_GERMAN
- --settings.show_highscores = SHOW_HIGHSCORES
- --settings.city_version = CITY_VERSION
- settings.spawn_villager = SPAWN_VILLAGER
- --settings.number_of_buildzones = NUMBER_OF_BUILDZONES
- settings.phase_length_game = PHASE_LENGTH_GAME
- settings.phase_length_wait = PHASE_LENGTH_WAIT
- settings.phase_length_over = PHASE_LENGTH_OVER
- --settings.homecomer_type = HOMECOMER_TYPE
- --settings.homecomer_value = HOMECOMER_VALUE
- --settings.max_players_per_game = MAX_PLAYERS_PER_GAME
- --settings.min_buildings = MIN_BUILDINGS
- --save the file with settings
- local file = fs.open(filename,"w")
- file.write(json.encodePretty(settings))
- file.close()
- end
- return settings
- end
- print('loadCustomSettings()')
- loadCustomSettings()
- --]]
- --- VARIABLES CONSTRUCTED FROM THE SETTINGS ABOVE
- ---CATALOGUE related
- ---
- ---
- --- PLAY AREA RELATED
- --
- -- OLDER STUFF
- --[[
- SPAWN = {
- x=computer.x-5,
- y=computer.y,
- z=computer.z-5,
- a1=90,
- a2=0
- }
- DEBUG_ZONE= {
- x=computer.x+2,
- y=computer.y,
- z=computer.z+2
- }
- WAITZONE = {
- x=12093,
- y=56,
- z=-1779,
- w=5,
- l=5
- }
- --]]
- --houseNBT = '{Item:{id:minecraft:wool,Damage:0s,tag:{display:{Name:"House Construction Block",Lore:[Place this against a Diamond to build a house]},CanPlaceOn:["'..BLOCKS.BUILDING_HOUSE.block..'","'..BLOCKS.PLUG.block..'","'..BLOCKS.DETECT.block..'"]}}}'
- --gardenNBT = '{Item:{id:minecraft:wool,Damage:13s,tag:{display:{Name:"Garden Construction Block",Lore:[Place this against a Diamond to build a pond or pool]},CanPlaceOn:["'..BLOCKS.BUILDING_HOUSE.block..'","'..BLOCKS.PLUG.block..'","'..BLOCKS.DETECT.block..'"]}}}'
- --[[
- --call these to return a proper minecraft item string including adventure mode properties
- function houseBlock(quant)
- local text =
- BLOCKS.BUILDING_HOUSE.block..' '..quant..' '..BLOCKS.BUILDING_HOUSE.variant..' {display:{Name:"Urban Resource",Lore:[Place this against a Detector to build denser, more urban buildings]},CanPlaceOn:["'..BLOCKS.BUILDING_HOUSE.block..'","'..BLOCKS.PLUG.block..'","'..BLOCKS.DETECT.block..'"]}'
- return text
- end
- function gardenBlock(quant)
- local text = BLOCKS.BUILDING_GARDEN.block..' '..quant..' '..BLOCKS.BUILDING_GARDEN.variant..' {display:{Name:"Nature Resource",Lore:[Place this against a Detector to build greener, more open buildings]},CanPlaceOn:["'..BLOCKS.BUILDING_HOUSE.block..'","'..BLOCKS.PLUG.block..'","'..BLOCKS.DETECT.block..'"]}'
- return text
- end
- --]]
- -- houseBlock(30), gardenBlock(30),pickaxe
- --}
- --if the file starting_items doesnt exist then
- -- create it with the default ones
- --[[
- local default_starting_items = {
- 'item{',
- ' block = "wool",',
- ' variant = 0,',
- ' amount = 16',
- '}',
- 'item{',
- ' block = "wool",',
- ' variant = 13,',
- ' amount = 16',
- '}'
- }
- function checkStartingItemsFile()
- local filename = "starting_items"
- if not utils.file_exists(filename) then
- local file = fs.open(filename,"w")
- for i,line in ipairs(default_starting_items) do
- file.write(line.."\n")
- end
- file.close()
- end
- end
- --starting_items = {}
- function starting_items.item(item_table)
- --if all fields are correct add the item to the global variable
- if item_table.block and item_table.variant and item_table.amount then
- startingItemsBlocks[item_table.block] = true
- table.insert(startingItemsTable,item_table)
- end
- end
- --os.loadAPI("starting_items")
- function checkStartingItemsFile()
- local filename = "starting_items"
- if not utils.file_exists(filename) then
- local file = fs.open(filename,"w")
- file.write(json.encodePretty(test))
- file.close()
- end
- end
- checkStartingItemsFile()
- --]]
- --getStartingItems()
- DEFAULT_ELEMENTS_SETTINGS = {
- {element_id=1, element_name="element",reward_emeralds=0,reward_blocks={{block = "minecraft:wool", variant = 0, amount=1},{block = "minecraft:wool", variant = 10, amount=10}}, metric_1=0, metric_2=0, metric_3=0, metric_4=0},
- {element_id=2, element_name="element",reward_emeralds=1,reward_blocks={}, metric_1=0, metric_2=0, metric_3=0, metric_4=0},
- {element_id=3, element_name="element",reward_emeralds=0,reward_blocks={{block = "minecraft:wool", variant = 0, amount=1}}, metric_1=0, metric_2=0, metric_3=0, metric_4=0}
- }
- --- TODO a function to collect the blocks listed in element_settings and starting_items and return them as a list to use for the PlaceOn Tags on all of them
- ----------------------------------------------------------------------------------------------------------------
- -- the data structure below represents the catalogue of vocabularies as built in minecraft
- -- id - is unique for each vocab, starting from 1 going to 40 currently
- -- column and row - represent the "physical" location of the vocab model in the catalogue in the minecraft world
- -- nameEN and nameDE - are names for english and german. for now english names must not have spaces, use dashes (-) instead
- -- typeEN and typeDE - are the type names, also in english and german such as tech&science spaces
- -- height - is how many blocks is this structure tall
- -- slots - is how many potential detector stones is this structure occupying as a building, ex. 2 for houses, 3 for corner extenstions, 0 for plazas
- -- green - is true or false and is used for easier calculation of the GREENEST GOAL - we dont use this field now and can be removed
- -- greenSlots - is how many slots are green and is used for easier calculation of the GREENEST GOAL
- VOCABS_DATA = {
- -- urban houses
- {id=1, column=1, row=1,nameEN="SINGLE-FAMILY-HOUSE",nameDE="EINFAMILIENHAUS", typeEN="HOUSES",typeDE="HÄUSER",height=10, slots=2, green=false, greenSlots=0, rewardUrban=false, rewardCount=4},
- {id=2, column=1, row=2,nameEN="SINGLE-FAMILY-HOUSE",nameDE="EINFAMILIENHAUS", typeEN="HOUSES",typeDE="HÄUSER",height=10, slots=2, green=false, greenSlots=0, rewardUrban=false, rewardCount=4},
- {id=3, column=1, row=3,nameEN="SINGLE-FAMILY-HOUSE",nameDE="EINFAMILIENHAUS", typeEN="HOUSES",typeDE="HÄUSER",height=10, slots=2, green=false, greenSlots=0, rewardUrban=false, rewardCount=4},
- {id=4, column=1, row=4,nameEN="SINGLE-FAMILY-HOUSE",nameDE="EINFAMILIENHAUS", typeEN="HOUSES",typeDE="HÄUSER",height=10, slots=2, green=false, greenSlots=0, rewardUrban=false, rewardCount=4},
- -- urban businesses
- {id=5, column=2, row=1,nameEN="GYM",nameDE="FITNESSSTUDIO", typeEN="BUSINESSES",typeDE="GESCHÄFTE",height=20, slots=5, green=false, greenSlots=0, rewardUrban=false, rewardCount=8},
- {id=6, column=2, row=2,nameEN="OFFICE-BUILDING",nameDE="BÜROGEBÄUDE", typeEN="BUSINESSES",typeDE="GESCHÄFTE",height=20, slots=5, green=false, greenSlots=0, rewardUrban=false, rewardCount=8},
- {id=7, column=2, row=3,nameEN="HOTEL",nameDE="HOTEL", typeEN="BUSINESSES",typeDE="GESCHÄFTE",height=20, slots=5, green=false, greenSlots=0, rewardUrban=false, rewardCount=8},
- {id=8, column=2, row=4 ,nameEN="BANK",nameDE="BANK", typeEN="BUSINESSES",typeDE="GESCHÄFTE",height=20, slots=5, green=false, greenSlots=0, rewardUrban=false, rewardCount=8},
- -- urban tech&science spaces
- {id=9, column=3, row=1,nameEN="LIBRARY",nameDE="BIBLIOTHEK", typeEN="TECH & SCIENCE SPACES",typeDE="WISSENSCHAFTSGEBÄUDE",height=16, slots=1, green=false, greenSlots=0, rewardUrban=false, rewardCount=10},
- {id=10, column=3, row=2,nameEN="FABLAB",nameDE="INNOVATIONSZENTRUM", typeEN="TECH & SCIENCE SPACES",typeDE="WISSENSCHAFTSGEBÄUDE",height=16, slots=1, green=false, greenSlots=0, rewardUrban=false, rewardCount=10},
- -- green tech&science spaces
- {id=11, column=3, row=3,nameEN="AQUAPONIC-GREENHOUSE",nameDE="AQUAPONIK-GEWÄCHSHAUS", typeEN="TECH & SCIENCE SPACES",typeDE="WISSENSCHAFTSGEBÄUDE",height=16, slots=1, green=true, greenSlots=1, rewardUrban=true, rewardCount=10},
- {id=12, column=3, row=4,nameEN="SCIENCE-BRIDGE",nameDE="WISSENSCHAFTSBRÜCKE", typeEN="TECH & SCIENCE SPACES",typeDE="WISSENSCHAFTSGEBÄUDE",height=16, slots=1, green=true, greenSlots=1, rewardUrban=true, rewardCount=10},
- -- urban house extensions
- {id=13, column=4, row=1,nameEN="HOUSE-EXTENSION",nameDE="HAUSERWEITERUNG", typeEN="EXTENSIONS",typeDE="ERWEITERUNGEN",height=10, slots=1, green=false, greenSlots=0, rewardUrban=false, rewardCount=6},
- {id=14, column=4, row=2,nameEN="HOUSE-EXTENSION",nameDE="HAUSERWEITERUNG", typeEN="EXTENSIONS",typeDE="ERWEITERUNGEN",height=10, slots=1, green=false, greenSlots=0, rewardUrban=false, rewardCount=6},
- {id=15, column=4, row=3,nameEN="HOUSE-EXTENSION",nameDE="HAUSERWEITERUNG", typeEN="EXTENSIONS",typeDE="ERWEITERUNGEN",height=10, slots=1, green=false, greenSlots=0, rewardUrban=false, rewardCount=6},
- {id=16, column=4, row=4,nameEN="HOUSE-EXTENSION",nameDE="HAUSERWEITERUNG", typeEN="EXTENSIONS",typeDE="ERWEITERUNGEN",height=10, slots=1, green=false, greenSlots=0, rewardUrban=false, rewardCount=6},
- --risers
- {id=17, column=5, row=1,nameEN="DOUBLE-FLOOR-RISER",nameDE="VERSCHIEBUNG-ZWEI-HOCH", typeEN="RISERS",typeDE="VERTIKALE VERSCHIEBUNGEN",height=0, slots=0, green=false, greenSlots=0, rewardUrban=true, rewardCount=8},
- {id=18, column=5, row=2,nameEN="SINGLE-FLOOR-RISER",nameDE="VERSCHIEBUNG-EINEN-HOCH", typeEN="RISERS",typeDE="VERTIKALE VERSCHIEBUNGEN",height=0, slots=0, green=false, greenSlots=0, rewardUrban=true, rewardCount=6},
- --plazas
- {id=19, column=5, row=3,nameEN="CITY-PLAZA",nameDE="STÄDTISCHER PLATZ", typeEN="PLAZAS",typeDE="PLÄTZE",height=0, slots=0, green=false, greenSlots=0, rewardUrban=false, rewardCount=2},
- {id=20, column=5, row=4,nameEN="PARK-PLAZA",nameDE="GRÜNER PLATZ", typeEN="PLAZAS",typeDE="PLÄTZE",height=0, slots=0, green=true, greenSlots=1, rewardUrban=true, rewardCount=2},
- --green businesses
- {id=21, column=6, row=1,nameEN="GREEN-GYM",nameDE="GRÜNES FITNESSSTUDIO", typeEN="BUSINESSES",typeDE="GESCHÄFTE",height=20, slots=5, green=true, greenSlots=5, rewardUrban=true, rewardCount=8},
- {id=22, column=6, row=2,nameEN="GREEN-OFFICE-BUILDING",nameDE="GRÜNES BÜROGEBÄUDE", typeEN="BUSINESSES",typeDE="GESCHÄFTE",height=20, slots=5, green=true, greenSlots=5, rewardUrban=true, rewardCount=8},
- {id=23, column=6, row=3,nameEN="GREEN-HOTEL",nameDE="GRÜNES HOTEL", typeEN="BUSINESSES",typeDE="GESCHÄFTE",height=20, slots=5, green=true, greenSlots=5, rewardUrban=true, rewardCount=8},
- {id=24, column=6, row=4,nameEN="GREEN-BANK",nameDE="GRÜNES BANK", typeEN="BUSINESSES",typeDE="GESCHÄFTE",height=20, slots=5, green=true, greenSlots=5, rewardUrban=true, rewardCount=8},
- ---green private garden extensions
- {id=25, column=7, row=1,nameEN="HOUSE-GARDEN",nameDE="PRIVATGARTEN", typeEN="EXTENSIONS",typeDE="ERWEITERUNGEN",height=0, slots=0, green=true, greenSlots=1, rewardUrban=true, rewardCount=6},
- {id=26, column=7, row=2,nameEN="HOUSE-GARDEN",nameDE="PRIVATGARTEN", typeEN="EXTENSIONS",typeDE="ERWEITERUNGEN",height=0, slots=0, green=true, greenSlots=1, rewardUrban=true, rewardCount=6},
- {id=27, column=7, row=3,nameEN="HOUSE-GARDEN",nameDE="PRIVATGARTEN", typeEN="EXTENSIONS",typeDE="ERWEITERUNGEN",height=0, slots=0, green=true, greenSlots=1, rewardUrban=true, rewardCount=6},
- {id=28, column=7, row=4,nameEN="HOUSE-GARDEN",nameDE="PRIVATGARTEN", typeEN="EXTENSIONS",typeDE="ERWEITERUNGEN",height=0, slots=0, green=true, greenSlots=1, rewardUrban=true, rewardCount=6},
- ---green gathering spaces
- {id=29, column=8, row=1,nameEN="OPEN-AIR-CINEMA",nameDE="FREILUFTKINO", typeEN="GATHERING SPACES",typeDE="TREFFPUNKTE",height=8, slots=3, green=true, greenSlots=3, rewardUrban=true, rewardCount=9},
- {id=30, column=8, row=2,nameEN="OPEN-AIR-SWIMMING-POOL",nameDE="FREIBAD", typeEN="GATHERING SPACES",typeDE="TREFFPUNKTE",height=8, slots=3, green=true, greenSlots=3, rewardUrban=true, rewardCount=9},
- {id=31, column=8, row=3,nameEN="GREEN-CAFE",nameDE="GRÜNES CAFÉ", typeEN="GATHERING SPACES",typeDE="TREFFPUNKTE",height=8, slots=3, green=true, greenSlots=3, rewardUrban=true, rewardCount=9},
- {id=32, column=8, row=4,nameEN="PALM-TREE-HOUSE",nameDE="PALMENGARTEN", typeEN="GATHERING SPACES",typeDE="TREFFPUNKTE",height=8, slots=3, green=true, greenSlots=3, rewardUrban=true, rewardCount=9},
- ----urban gathering spaces
- {id=33, column=9, row=1,nameEN="CINEMA",nameDE="KINO", typeEN="GATHERING SPACES",typeDE="TREFFPUNKTE",height=8, slots=3, green=false, greenSlots=0, rewardUrban=false, rewardCount=9},
- {id=34, column=9, row=2,nameEN="CONFERENCE-HALL",nameDE="KONFERENZHALLE", typeEN="GATHERING SPACES",typeDE="TREFFPUNKTE",height=8, slots=3, green=false, greenSlots=0, rewardUrban=false, rewardCount=9},
- {id=35, column=9, row=3,nameEN="CAFÉ",nameDE="CAFÉ", typeEN="GATHERING SPACES",typeDE="TREFFPUNKTE",height=8, slots=3, green=false, greenSlots=0, rewardUrban=false, rewardCount=9},
- {id=36, column=9, row=4,nameEN="ART-GALLERY",nameDE="KUNSTGALERIE", typeEN="GATHERING SPACES",typeDE="TREFFPUNKTE",height=8, slots=3, green=false, greenSlots=0, rewardUrban=false, rewardCount=9},
- ---green-roof houses
- {id=37, column=10, row=1,nameEN="GREEN-ROOF-HOUSE",nameDE="GRÜNES EINFAMILIENHAUS", typeEN="HOUSES",typeDE="HÄUSER",height=10, slots=2, green=true, greenSlots=2, rewardUrban=true, rewardCount=4},
- {id=38, column=10, row=2,nameEN="GREEN-ROOF-HOUSE",nameDE="GRÜNES EINFAMILIENHAUS", typeEN="HOUSES",typeDE="HÄUSER",height=10, slots=2, green=true, greenSlots=2, rewardUrban=true, rewardCount=4},
- {id=39, column=10, row=3,nameEN="GREEN-ROOF-HOUSE",nameDE="GRÜNES EINFAMILIENHAUS", typeEN="HOUSES",typeDE="HÄUSER",height=10, slots=2, green=true, greenSlots=2, rewardUrban=true, rewardCount=4},
- {id=40, column=10, row=4,nameEN="GREEN-ROOF-HOUSE",nameDE="GRÜNES EINFAMILIENHAUS", typeEN="HOUSES",typeDE="HÄUSER",height=10, slots=2, green=true, greenSlots=2, rewardUrban=true, rewardCount=4},
- }
- --DEFAULT_REWARD = houseBlock(4)
- --REWARDS = {}
- --[[if DEBUG_MODE then
- PHASE_LENGTH_GAME = 12000
- NUMBER_OF_BUILDZONES = 1
- FIRSTZONE = DEBUG_ZONE
- end]]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement