Mercurial > molko
annotate examples/example-inventory.c @ 131:c679e08b32b2
molko: fix startup
author | David Demelier <markand@malikania.fr> |
---|---|
date | Wed, 07 Oct 2020 09:37:28 +0200 |
parents | d59efa737fcc |
children | 197374e9f0b2 |
rev | line source |
---|---|
102
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 /* |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 * example-inventory.c -- show how to use inventory dialog |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 * |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 * Copyright (c) 2020 David Demelier <markand@malikania.fr> |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 * |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 * Permission to use, copy, modify, and/or distribute this software for any |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 * purpose with or without fee is hereby granted, provided that the above |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 * copyright notice and this permission notice appear in all copies. |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 * |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 */ |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 |
125
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
19 #include <core/clock.h> |
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
20 #include <core/event.h> |
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
21 #include <core/image.h> |
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
22 #include <core/inventory.h> |
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
23 #include <core/inventory_dialog.h> |
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
24 #include <core/item.h> |
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
25 #include <core/painter.h> |
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
26 #include <core/panic.h> |
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
27 #include <core/sys.h> |
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
28 #include <core/texture.h> |
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
29 #include <core/theme.h> |
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
30 #include <core/util.h> |
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
31 #include <core/window.h> |
102
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 |
108
5e38f88cb9ab
make: generate binary files during build
David Demelier <markand@malikania.fr>
parents:
105
diff
changeset
|
33 /* https://shikashiassets.itch.io/shikashis-fantasy-icons-pack */ |
125
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
34 #include <assets/images/fish.h> |
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
35 #include <assets/images/potion.h> |
d59efa737fcc
cmake: add examples and fix
David Demelier <markand@malikania.fr>
parents:
114
diff
changeset
|
36 #include <assets/images/sword.h> |
108
5e38f88cb9ab
make: generate binary files during build
David Demelier <markand@malikania.fr>
parents:
105
diff
changeset
|
37 |
114
bf7500aea454
examples: switch to 720p
David Demelier <markand@malikania.fr>
parents:
110
diff
changeset
|
38 #define W 1280 |
bf7500aea454
examples: switch to 720p
David Demelier <markand@malikania.fr>
parents:
110
diff
changeset
|
39 #define H 720 |
102
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
41 static struct { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 const unsigned char *data; |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 const size_t datasz; |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
44 struct texture icon; |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
45 struct item item; |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 } items[] = { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
47 { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
48 .data = potion, |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
49 .datasz = sizeof (potion), |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
50 .item = { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
51 .name = "Potion", |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
52 .summary = "Recover 100 HP.", |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
53 .stackable = ITEM_STACK_MAX |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
54 } |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
55 }, |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
56 { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
57 .data = fish, |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
58 .datasz = sizeof (fish), |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
59 .item = { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
60 .name = "Fish", |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
61 .summary = "Recover 1000 HP.", |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
62 .stackable = ITEM_STACK_MAX |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
63 } |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
64 }, |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
65 { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
66 .data = sword, |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
67 .datasz = sizeof (sword), |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
68 .item = { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
69 .name = "Sword", |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
70 .summary = "A very basic sword.", |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
71 .stackable = 1 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
72 } |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
73 }, |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
74 }; |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
75 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
76 static void |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
77 init(void) |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
78 { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
79 if (!sys_init() || |
109
22014be67057
doc: add examples page
David Demelier <markand@malikania.fr>
parents:
108
diff
changeset
|
80 !window_init("Example - Inventory", W, H) || |
102
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
81 !theme_init()) |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
82 panic(); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
83 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
84 for (size_t i = 0; i < NELEM(items); ++i) { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
85 if (!image_openmem(&items[i].icon, items[i].data, items[i].datasz)) |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
86 panic(); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
87 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
88 items[i].item.icon = &items[i].icon; |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
89 } |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
90 } |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
91 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
92 static void |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
93 quit(void) |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
94 { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
95 theme_finish(); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
96 window_finish(); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
97 sys_finish(); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
98 } |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
99 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
100 static void |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
101 run(struct inventory_dialog *dlg) |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
102 { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
103 struct clock clock = {0}; |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
104 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
105 clock_start(&clock); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
106 inventory_dialog_open(dlg); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
107 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
108 while (dlg->state) { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
109 union event ev; |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
110 unsigned int elapsed = clock_elapsed(&clock); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
111 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
112 clock_start(&clock); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
113 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
114 while (event_poll(&ev)) { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
115 switch (ev.type) { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
116 case EVENT_QUIT: |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
117 inventory_dialog_finish(dlg); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
118 break; |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
119 default: |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
120 inventory_dialog_handle(dlg, &ev); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
121 break; |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
122 } |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
123 } |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
124 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
125 inventory_dialog_update(dlg, elapsed); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
126 painter_set_color(0xffffffff); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
127 painter_clear(); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
128 inventory_dialog_draw(dlg); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
129 painter_present(); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
130 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
131 if ((elapsed = clock_elapsed(&clock)) < 20) |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
132 delay(20 - elapsed); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
133 } |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
134 } |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
135 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
136 static void |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
137 basic(void) |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
138 { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
139 struct inventory inv = { 0 }; |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
140 struct inventory_dialog dlg = { |
105
f6b5e2fbbc81
inventory_dialog: add basic movements
David Demelier <markand@malikania.fr>
parents:
102
diff
changeset
|
141 .inv = &inv, |
f6b5e2fbbc81
inventory_dialog: add basic movements
David Demelier <markand@malikania.fr>
parents:
102
diff
changeset
|
142 .x = 60, |
f6b5e2fbbc81
inventory_dialog: add basic movements
David Demelier <markand@malikania.fr>
parents:
102
diff
changeset
|
143 .y = 60 |
102
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
144 }; |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
145 |
110
d3bc14c1e243
inventory: add sorting algorithms
David Demelier <markand@malikania.fr>
parents:
109
diff
changeset
|
146 /* Add items manually to be able to sort. */ |
d3bc14c1e243
inventory: add sorting algorithms
David Demelier <markand@malikania.fr>
parents:
109
diff
changeset
|
147 inv.items[1][5].item = &items[0].item; |
d3bc14c1e243
inventory: add sorting algorithms
David Demelier <markand@malikania.fr>
parents:
109
diff
changeset
|
148 inv.items[1][5].amount = 12; |
d3bc14c1e243
inventory: add sorting algorithms
David Demelier <markand@malikania.fr>
parents:
109
diff
changeset
|
149 |
d3bc14c1e243
inventory: add sorting algorithms
David Demelier <markand@malikania.fr>
parents:
109
diff
changeset
|
150 inv.items[1][2].item = &items[0].item; |
d3bc14c1e243
inventory: add sorting algorithms
David Demelier <markand@malikania.fr>
parents:
109
diff
changeset
|
151 inv.items[1][2].amount = 9; |
d3bc14c1e243
inventory: add sorting algorithms
David Demelier <markand@malikania.fr>
parents:
109
diff
changeset
|
152 |
d3bc14c1e243
inventory: add sorting algorithms
David Demelier <markand@malikania.fr>
parents:
109
diff
changeset
|
153 inv.items[2][7].item = &items[1].item; |
d3bc14c1e243
inventory: add sorting algorithms
David Demelier <markand@malikania.fr>
parents:
109
diff
changeset
|
154 inv.items[2][7].amount = 9; |
d3bc14c1e243
inventory: add sorting algorithms
David Demelier <markand@malikania.fr>
parents:
109
diff
changeset
|
155 |
d3bc14c1e243
inventory: add sorting algorithms
David Demelier <markand@malikania.fr>
parents:
109
diff
changeset
|
156 inv.items[2][8].item = &items[1].item; |
d3bc14c1e243
inventory: add sorting algorithms
David Demelier <markand@malikania.fr>
parents:
109
diff
changeset
|
157 inv.items[2][8].amount = 3; |
d3bc14c1e243
inventory: add sorting algorithms
David Demelier <markand@malikania.fr>
parents:
109
diff
changeset
|
158 |
d3bc14c1e243
inventory: add sorting algorithms
David Demelier <markand@malikania.fr>
parents:
109
diff
changeset
|
159 inv.items[2][4].item = &items[2].item; |
d3bc14c1e243
inventory: add sorting algorithms
David Demelier <markand@malikania.fr>
parents:
109
diff
changeset
|
160 inv.items[2][4].amount = 1; |
102
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
161 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
162 run(&dlg); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
163 } |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
164 |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
165 int |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
166 main(int argc, char **argv) |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
167 { |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
168 init(); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
169 basic(); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
170 quit(); |
26fef20fd89d
inventory_dialog: draw basic shapes
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
171 } |