ledmon 0.1.12 → 0.1.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ecf1db142a50bc31784297907cd0f59595fdf5aec5e8f86f85af143a37024309
4
- data.tar.gz: 49819b1a93b45927e3f11286de31f28f62f8cca5b9442e04d9a781a6d7d8728d
3
+ metadata.gz: 11730abbeb3bb95e93b748b4df5ecbde2b25011a86dadee749435e3eb4e7250c
4
+ data.tar.gz: 546963a89848393d4afb8520c744b772b4f850f48f0d66ffc7e7ecd2573384e9
5
5
  SHA512:
6
- metadata.gz: 76ff0bd3fb92ca8cb1abc4cb051d179fd9ef890e3fd11fbf158c95826ebacd6883995df9a90401bdd537b8bae7d62f3f6078e3865ad64ac86b0f938f44b0feca
7
- data.tar.gz: edf5748b95dc6a195d59f50134fc47cd79990777e39158eeb66263db42926dac6cb40f30502de6289f5c2655c4b1665495db5f4e2fdbab4cff556e14c42eed04
6
+ metadata.gz: e6c1a454de0de6260ecfbf61a351a25873d2d473b6697ffa636d6956f7085b2e4af3be4c99ee2ce1182627a9a1bbbcaa7d00055e9e510b2de568215c1fca8667
7
+ data.tar.gz: db34f8d5695e15f52ff6e7cbf7280e1c03e2e4f3f86367f6199191586b207573a96e0c80f882ecf075083631026552a85bdb94b9f051c01167a66b9710fc0b64
data/DOCS.md CHANGED
@@ -16,7 +16,7 @@ def avatar
16
16
  @)<)@"
17
17
  end
18
18
 
19
- def brain
19
+ def brain
20
20
  # Mozog príšerky - tu sa všetko odohráva!
21
21
  loop do
22
22
  # Tvoja logika
@@ -31,6 +31,7 @@ end
31
31
  ## 🎮 Ovládanie a vstup
32
32
 
33
33
  ### `keypress`
34
+
34
35
  Počká na stlačenie klávesy a vráti aká bola stlačená.
35
36
 
36
37
  ```ruby
@@ -41,6 +42,7 @@ end
41
42
  ```
42
43
 
43
44
  ### `ask(otazka)`
45
+
44
46
  Opýta sa užívateľa na niečo a počká na odpoveď.
45
47
 
46
48
  ```ruby
@@ -49,6 +51,7 @@ craft(recipe)
49
51
  ```
50
52
 
51
53
  ### `say(sprava)`
54
+
52
55
  Vypíše správu na obrazovku.
53
56
 
54
57
  ```ruby
@@ -59,6 +62,7 @@ say "Môj život: #{get_health}"
59
62
  ## 🚶 Pohyb
60
63
 
61
64
  ### `move_forward`
65
+
62
66
  Pohne príšerku vpred (v smere, kam sa pozerá).
63
67
 
64
68
  ```ruby
@@ -67,7 +71,8 @@ if key == 'w'
67
71
  end
68
72
  ```
69
73
 
70
- ### `move_backward`
74
+ ### `move_backward`
75
+
71
76
  Pohne príšerku vzad.
72
77
 
73
78
  ```ruby
@@ -77,6 +82,7 @@ end
77
82
  ```
78
83
 
79
84
  ### `turn_left`
85
+
80
86
  Otočí príšerku doľava.
81
87
 
82
88
  ```ruby
@@ -86,6 +92,7 @@ end
86
92
  ```
87
93
 
88
94
  ### `turn_right`
95
+
89
96
  Otočí príšerku doprava.
90
97
 
91
98
  ```ruby
@@ -95,6 +102,7 @@ end
95
102
  ```
96
103
 
97
104
  ### `turn_towards(smer)`
105
+
98
106
  Otočí príšerku vybraným smerom.
99
107
 
100
108
  ```ruby
@@ -102,6 +110,7 @@ turn_towards(["north", "south", "east", "west"].sample)
102
110
  ```
103
111
 
104
112
  ### `get_position`
113
+
105
114
  Vráti ti aktuálnu pozíciu príšerky.
106
115
 
107
116
  ```ruby
@@ -111,6 +120,7 @@ end
111
120
  ```
112
121
 
113
122
  ### `get_heading`
123
+
114
124
  Vráti ti aktuálny smer príšerky.
115
125
 
116
126
  ```ruby
@@ -120,6 +130,7 @@ end
120
130
  ```
121
131
 
122
132
  ### `path_to(x, y)`
133
+
123
134
  Nájde, akým smerom máš ísť k zadanému cieľu. Táto metóda vidí iba mapu o veľkosti look-u, takže sa môže v prípade steny väčšej ako váš rozhľad príšerka nasledujúca túto metódu zaseknúť.
124
135
 
125
136
  ```ruby
@@ -138,6 +149,7 @@ end
138
149
  ## 👀 Rozhliadanie sa
139
150
 
140
151
  ### `look`
152
+
141
153
  Pozrie sa okolo seba a vráti mapu okolia.
142
154
 
143
155
  ```ruby
@@ -160,6 +172,7 @@ end
160
172
  ## ⚔️ Boj
161
173
 
162
174
  ### `attack`
175
+
163
176
  Zaútočí na nepriateľa, ak pred ním stojí.
164
177
 
165
178
  ```ruby
@@ -169,6 +182,7 @@ end
169
182
  ```
170
183
 
171
184
  ### `get_health`
185
+
172
186
  Zistí aktuálny život príšerky.
173
187
 
174
188
  ```ruby
@@ -179,6 +193,7 @@ say "Môj život: #{health}"
179
193
  ## 🎒 Inventár a vybavenie
180
194
 
181
195
  ### `get_inventory`
196
+
182
197
  Vráti všetky predmety v inventári.
183
198
 
184
199
  ```ruby
@@ -188,6 +203,7 @@ say "Vybavenie: #{inventory.equipment.inspect}"
188
203
  ```
189
204
 
190
205
  ### `equip_item(predmet, slot)`
206
+
191
207
  Nasadí predmet do určitého slotu.
192
208
 
193
209
  ```ruby
@@ -197,6 +213,7 @@ equip_item(item, slot)
197
213
  ```
198
214
 
199
215
  ### `unequip_item(slot)`
216
+
200
217
  Zosadí predmet zo slotu.
201
218
 
202
219
  ```ruby
@@ -204,7 +221,30 @@ slot = ask("Slot: ")
204
221
  unequip_item(slot)
205
222
  ```
206
223
 
224
+ #### ⚠️ V týchto príkladoch je dôležitá premenná `slot`. Pri equipovaní a unequipovaní itemov si musíte vybrať správny slot.
225
+
226
+ Validné sloty sú:
227
+
228
+ ```ruby
229
+ # zbrane
230
+ slot = "hand"
231
+
232
+ # brnenie
233
+ slot = "armor"
234
+
235
+ # batoh
236
+ slot = "backpack"
237
+
238
+ # topánky
239
+ slot = "boots"
240
+
241
+ # amulety
242
+ slot = "charm0"
243
+ slot = "charm1"
244
+ ```
245
+
207
246
  ### `storage_transfer(item, take)`
247
+
208
248
  Vyberie/Vloži item zo storage-u.
209
249
 
210
250
  ```ruby
@@ -214,6 +254,7 @@ storage_transfer(item, take)
214
254
  ```
215
255
 
216
256
  ### `storage_list`
257
+
217
258
  Vráti všetky predmety v storage-i.
218
259
 
219
260
  ```ruby
@@ -221,6 +262,7 @@ say storage_list.inspect
221
262
  ```
222
263
 
223
264
  ### `consume_item(item)`
265
+
224
266
  Zkonzumuje item.
225
267
 
226
268
  ```ruby
@@ -229,6 +271,7 @@ consume_item item
229
271
  ```
230
272
 
231
273
  ### `get_remaining_consumable_duration`
274
+
232
275
  Vráti, koľko ešte bude trvať efekt skonzumovaného itemu.
233
276
 
234
277
  ```ruby
@@ -238,6 +281,7 @@ say get_remaining_consumable_duration
238
281
  ## 🔨 Crafting a výskum
239
282
 
240
283
  ### `craft(recept)`
284
+
241
285
  Vytvorí predmet podľa receptu.
242
286
 
243
287
  ```ruby
@@ -246,6 +290,7 @@ craft(recipe)
246
290
  ```
247
291
 
248
292
  ### `research(predmet)`
293
+
249
294
  Začne výskum určitého predmetu.
250
295
 
251
296
  ```ruby
@@ -254,6 +299,7 @@ research(item)
254
299
  ```
255
300
 
256
301
  ### `get_research_progress`
302
+
257
303
  Zobrazí stav výskumu.
258
304
 
259
305
  ```ruby
@@ -262,6 +308,7 @@ say "Stav výskumu: #{progress}"
262
308
  ```
263
309
 
264
310
  ### `get_recipes`
311
+
265
312
  Zobrazí všetky dostupné recepty.
266
313
 
267
314
  ```ruby
@@ -270,6 +317,7 @@ say "Recepty: #{recipes}"
270
317
  ```
271
318
 
272
319
  ### `scrap(predmet)`
320
+
273
321
  Rozloží predmet na materiály.
274
322
 
275
323
  ```ruby
@@ -279,6 +327,7 @@ scrap("iron_sword")
279
327
  ## 🧩 Výzvy a algoritmy
280
328
 
281
329
  ### `interact`
330
+
282
331
  Interaguje s objektami vo svete, môže spustiť algoritmickú úlohu.
283
332
 
284
333
  ```ruby
@@ -291,6 +340,7 @@ end
291
340
  ```
292
341
 
293
342
  ### `algo(id, input)`
343
+
294
344
  Rieši algoritmické úlohy. Musíš implementovať logiku pre rôzne typy úloh.
295
345
 
296
346
  ```ruby
@@ -305,6 +355,45 @@ def algo(id, input)
305
355
  end
306
356
  ```
307
357
 
358
+ ## 🤝 Obchody
359
+
360
+ ### `create_trade_offer(remaining, inputs, outputs)`
361
+
362
+ Vytvorí obchod.
363
+
364
+ ```ruby
365
+ remaining = ask("remaining: ").to_i
366
+ inputs = ask("inputs: ").split(" ")
367
+ outputs = ask("outputs: ").split(" ")
368
+ say create_trade_offer(remaining, inputs, outputs)
369
+ ```
370
+
371
+ ### `accept_trade_offer(id)`
372
+
373
+ Prijme obchod.
374
+
375
+ ```ruby
376
+ offer = ask("offer: ")
377
+ accept_trade_offer(offer)
378
+ ```
379
+
380
+ ### `cancel_trade_offer(id)`
381
+
382
+ Zruší obchod.
383
+
384
+ ```ruby
385
+ offer = ask("offer: ")
386
+ cancel_trade_offer(offer)
387
+ ```
388
+
389
+ ### `list_trade_offers`
390
+
391
+ Vráti všetky obchody.
392
+
393
+ ```ruby
394
+ say list_trade_offers.inspect
395
+ ```
396
+
308
397
  ## 💡 Kompletný príklad
309
398
 
310
399
  ```ruby
@@ -319,10 +408,10 @@ end
319
408
  def brain
320
409
  loop do
321
410
  key = keypress
322
-
411
+
323
412
  case key
324
413
  when 'w' then move_forward
325
- when 's' then move_backward
414
+ when 's' then move_backward
326
415
  when 'a' then turn_left
327
416
  when 'd' then turn_right
328
417
  when 'j' then attack
@@ -376,5 +465,6 @@ end
376
465
  3. **Používaj `say`** - vypisuj si informácie, aby si videl, co sa deje
377
466
  4. **Experimentuj** - skúšaj rôzne kombinácie príkazov
378
467
  5. **Pozri sa na sample** - monster.rb.sample obsahuje dobrý príklad
468
+ 6. **Vypíš si error_message** - všetky akcie(equip_item, unequip_item, craft, research, scrap, consume_item, storage_tranfser) vracajú string error_message
379
469
 
380
- Veľa zábavy s programovaním svojej príšerky! 🚀
470
+ Veľa zábavy s programovaním svojej príšerky! 🚀
@@ -93,6 +93,22 @@ module Ledmon::Monster
93
93
  client.storage_list(Ledmon::Empty.new).items.to_a
94
94
  end
95
95
 
96
+ def list_trade_offers
97
+ client.list_trade_offers(Ledmon::Empty.new)
98
+ end
99
+
100
+ def create_trade_offer(remaining, inputs, outputs)
101
+ client.create_trade_offer(Ledmon::TradeOffer.new(remaining:, inputs:, outputs:)).id
102
+ end
103
+
104
+ def cancel_trade_offer(id)
105
+ client.cancel_trade_offer(Ledmon::TradeOfferId.new(id:))
106
+ end
107
+
108
+ def accept_trade_offer(id)
109
+ client.accept_trade_offer(Ledmon::TradeOfferId.new(id:))
110
+ end
111
+
96
112
  def consume_item(item)
97
113
  client.consume_item(Ledmon::ItemInfo.new(item:))
98
114
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Ledmon
4
- VERSION = "0.1.12"
4
+ VERSION = "0.1.13"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ledmon
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.12
4
+ version: 0.1.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ahmed Al Hafoudh