Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private void initTiles()
- {
- // Forgive me Gang of Four wherever you are.
- //4 fields, 4 forest, 4 pasture, 3 mountains, 3 hills, 1 desert
- //19 total
- // + 18 water
- Tile.UnfinishedTile t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11,
- t12, t13, t14, t15, t16, t17, t18, water;
- //This line initializes all the ts to null so that I can refer to them
- //later, because otherwise it thinks the try block can fail and leave
- //them uninitialized, even though the exception is never actually
- //thrown.
- t0=t1=t2=t3=t4=t5=t6=t7=t8=t9=t10=t11=t12=t13=t14=t15=t16=t17=t18=null;
- water = null;
- Integer[] ns = shuffle(
- 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12
- );
- Tile.Terrain[] ts = shuffle(
- FIELD, FIELD, FIELD, FIELD,
- FOREST, FOREST, FOREST, FOREST,
- PASTURE, PASTURE, PASTURE, PASTURE,
- MOUNTAIN, MOUNTAIN, MOUNTAIN,
- HILL, HILL, HILL,
- DESERT
- );
- try {
- int i=0;
- t0 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t1 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t2 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t3 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t4 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t5 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t6 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t7 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t8 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t9 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t10 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t11 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t12 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t13 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t14 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t15 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t16 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t17 = new Tile.UnfinishedTile(ts[i], ns[i++]);
- t18 = new Tile.UnfinishedTile(ts[i], ns[i]);
- water = new Tile.UnfinishedTile(WATER, 0);
- } catch (Tile.NeedsNeighborsException e) {
- // Duly noted, and addressed below.
- }
- t0.setNeighbors(water, water, t2, t4, t1, water);
- t1.setNeighbors(water, t0, t4, t6, t3, water);
- t2.setNeighbors(water, water, t5, t7, t4, t0);
- t3.setNeighbors(water, t1, t6, t8, water, water);
- t4.setNeighbors(t0, t2, t7, t9, t6, t1);
- t5.setNeighbors(water, water, water, t10, t7, t2);
- t6.setNeighbors(t1, t4, t9, t11, t8, t3);
- t7.setNeighbors(t2, t5, t10, t12, t9, t4);
- t8.setNeighbors(t3, t6, t11, t13, water, water);
- t9.setNeighbors(t4, t7, t12, t14, t11, t6);
- t10.setNeighbors(t5, water, water, t15, t12, t7);
- t11.setNeighbors(t6, t9, t14, t16, t13, t8);
- t12.setNeighbors(t7, t10, t15, t17, t14, t9);
- t13.setNeighbors(t8, t11, t16, water, water, water);
- t14.setNeighbors(t9, t12, t17, t18, t16, t11);
- t15.setNeighbors(t10, water, water, water, t17, t12);
- t16.setNeighbors(t11, t14, t18, water, water, t13);
- t17.setNeighbors(t12, t15, water, water, t18, t14);
- t18.setNeighbors(t14, t17, water, water, water, t16);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement