Procházet zdrojové kódy

Added landmark descriptions and names, and 4 new ones...

master
Ognjen Milan Robovic před 2 týdny
rodič
revize
f2dede1a16
6 změnil soubory, kde provedl 45 přidání a 32 odebrání
  1. +18
    -10
      source/world.adb
  2. +27
    -22
      source/world.ads
  3. binární
      sprite/world/landmark/grave.png
  4. binární
      sprite/world/landmark/humble_grave.png
  5. binární
      sprite/world/landmark/royal_grave.png
  6. binární
      sprite/world/landmark/wooden_wide_sign.png

+ 18
- 10
source/world.adb Zobrazit soubor

@@ -186,16 +186,16 @@ package body world is
v => v,
width => core.base,
height => core.base);
--~if core.cursor.x > offset.x + (horizontal - core.camera.x ) * core.base * core.zoom - 6
--~and core.cursor.x < offset.x + (horizontal - core.camera.x + 1) * core.base * core.zoom + 6
--~and core.cursor.y > offset.y + (vertical - core.camera.y ) * core.base * core.zoom - 6
--~and core.cursor.y < offset.y + (vertical - core.camera.y + 1) * core.base * core.zoom + 6
--~and core.cursor_mode = 1
--~and not ui.prioritize then
--~core.camera.x := horizontal;
--~core.camera.y := vertical;
--~core.cursor_mode := 0;
--~end if;
if core.cursor.x > offset.x + (horizontal - core.camera.x ) * core.base * core.zoom - 6
and core.cursor.x < offset.x + (horizontal - core.camera.x + 1) * core.base * core.zoom + 6
and core.cursor.y > offset.y + (vertical - core.camera.y ) * core.base * core.zoom - 6
and core.cursor.y < offset.y + (vertical - core.camera.y + 1) * core.base * core.zoom + 6
and core.cursor_mode = 1
and not ui.prioritize then
core.camera.x := horizontal;
core.camera.y := vertical;
core.cursor_mode := 0;
end if;
end if;
end loop;
end loop;
@@ -205,6 +205,14 @@ package body world is
core.draw (data => landmarks (landmark_index'val (map.landmarks (index).index)),
x => offset.x + (map.landmarks (index).x - core.camera.x) * core.base * core.zoom,
y => offset.y + (map.landmarks (index).y - core.camera.y) * core.base * core.zoom);
if core.cursor_inside (x => offset.x + (map.landmarks (index).x - core.camera.x) * core.base * core.zoom,
y => offset.y + (map.landmarks (index).y - core.camera.y) * core.base * core.zoom,
width => landmarks (landmark_index'val (map.landmarks (index).index)).width,
height => landmarks (landmark_index'val (map.landmarks (index).index)).height)
and core.cursor_mode = 2
and not ui.prioritize then
core.write_text_box (trait (landmark_index'val (map.landmarks (index).index)).name);
end if;
end if;
end loop;
--


+ 27
- 22
source/world.ads Zobrazit soubor

@@ -18,10 +18,11 @@ package world is
dead_tree, mossy_rock, palm_tree, pine_tree, pine_forest, reeds,
rock, snowed_pine_tree, snowed_rock, spiky_rock, wooden_sign, wooden_arrow_sign,
rune_stone, snowed_rune_stone, mossy_rune_stone, snowed_pine_forest, hyacinths, orchids,
asters, daffodils
asters, daffodils, royal_grave, grave, humble_grave, wooden_wide_sign
);

type landmark_trait is record
name : core.short_string;
spawn : biome;
clip : boolean;
frames : integer;
@@ -57,30 +58,34 @@ package world is
tiles : core.sprite;
landmarks : array (landmark_index) of core.sprite;

landmark_limit : constant integer := 120;
landmark_limit : constant integer := 360;
landmark_count : constant natural := landmark_index'pos (landmark_index'last) + 1;

trait : constant array (landmark_index) of landmark_trait := (
dead_tree => (ash, true, 1),
mossy_rock => (swamp, true, 1),
palm_tree => (sand, true, 4),
pine_tree => (grass, true, 4),
pine_forest => (grass, true, 4),
reeds => (swamp, false, 4),
rock => (sand, true, 1),
snowed_pine_tree => (snow, true, 4),
snowed_rock => (snow, true, 1),
spiky_rock => (ash, true, 1),
wooden_sign => (grass, false, 1),
wooden_arrow_sign => (grass, false, 1),
rune_stone => (grass, true, 4),
snowed_rune_stone => (snow, true, 1),
mossy_rune_stone => (swamp, true, 4),
snowed_pine_forest => (snow, true, 4),
hyacinths => (grass, false, 1),
orchids => (grass, false, 1),
asters => (grass, false, 1),
daffodils => (grass, false, 1)
dead_tree => ("Dead Tree ", ash, true, 1),
mossy_rock => ("Mossy Rock ", swamp, true, 1),
palm_tree => ("Palm Tree ", sand, true, 4),
pine_tree => ("Pine Tree ", grass, true, 4),
pine_forest => ("Pine Forest ", grass, true, 4),
reeds => ("Reeds ", swamp, false, 4),
rock => ("Rock ", sand, true, 1),
snowed_pine_tree => ("Snowed Pine Tree ", snow, true, 4),
snowed_rock => ("Snowed Rock ", snow, true, 1),
spiky_rock => ("Spiky Rock ", ash, true, 1),
wooden_sign => ("Wooden Sign ", grass, false, 1),
wooden_arrow_sign => ("Wooden Arrow Sign ", grass, false, 1),
rune_stone => ("Rune Stone ", grass, true, 4),
snowed_rune_stone => ("Snowed Rune Stone ", snow, true, 1),
mossy_rune_stone => ("Mossy Rune Stone ", swamp, true, 4),
snowed_pine_forest => ("Snowed Pine Forest ", snow, true, 4),
hyacinths => ("Hyacinths ", grass, false, 1),
orchids => ("Orchids ", grass, false, 1),
asters => ("Asters ", grass, false, 1),
daffodils => ("Daffodils ", grass, false, 1),
royal_grave => ("Royal Grave ", ash, true, 1),
grave => ("Grave ", ash, true, 1),
humble_grave => ("Humble Grave ", ash, true, 1),
wooden_wide_sign => ("Wooden Wide Sign ", grass, false, 1)
);

map : information;


binární
sprite/world/landmark/grave.png Zobrazit soubor

Před Za
Šířka: 16  |  Výška: 16  |  Velikost: 184B

binární
sprite/world/landmark/humble_grave.png Zobrazit soubor

Před Za
Šířka: 16  |  Výška: 16  |  Velikost: 195B

binární
sprite/world/landmark/royal_grave.png Zobrazit soubor

Před Za
Šířka: 16  |  Výška: 16  |  Velikost: 202B

binární
sprite/world/landmark/wooden_wide_sign.png Zobrazit soubor

Před Za
Šířka: 16  |  Výška: 16  |  Velikost: 189B

Načítá se…
Zrušit
Uložit