codenjoy-client 0.1.007 → 0.1.008

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: a4294e66ffc1a27e53301dd0f5e35988cdb569a6f6302251221d40bdcdbb2095
4
- data.tar.gz: d0764a9de7c1fae7fcd4aa6c60a53a18cd919a6f92fd87edebc8b91e642193c9
3
+ metadata.gz: 4b6fe4996900ad7ccb3c34c4071e5c4ac9ead56ab8adcf6e7938d631e0a5025a
4
+ data.tar.gz: bbf21d770fa45f7ca5b6940ea2cd9811a4a5657337dd9b07e28b9784885b904a
5
5
  SHA512:
6
- metadata.gz: 3f236bd121dfe6c3b75411f39e665a71ff0ab6bad931e480958bd01122913829220bbc4008e5b2b08b7e302e28223152b09a0f2d36a758828992a799d88477d2
7
- data.tar.gz: 5d009ade6891ac661abc53e086318106e1c28b0ac92f670408cd4d03eea336563e19a6cbf5dbba24bc993073313067e8b611f723265f94e8c6cdfa85c61743af
6
+ metadata.gz: d3ec8bc8879bf76efea2c85b48f53d5b176c5d2de0b3cf26e94aafd2ad19cdb11c4068b074b95da7578eed7acc93675a0c88788aa7ccc4d03f7e939bd7d5c0f5
7
+ data.tar.gz: 0f686f4963086353f4b2e8e2733c9ed6a3d56b7dc66920444997d9815e108f11b8d1d6f26fce755021d707a4d9446ce9811fd0dd053240f32bf906748e63ef2d
@@ -8,12 +8,11 @@ sourse = "#{game.source_path}/game_base_client.rb"
8
8
  dest = "#{Dir.pwd}/game_base_client.rb"
9
9
 
10
10
  puts "codenjoy-ruby-client util for develop ruby client for https://dojorena.io/"
11
+ puts "--game flag if you are learning with codenjoy"
11
12
  puts "--game common cases"
13
+ puts "Use --dev flag if you are developing codenjoy"
12
14
  puts "--dev for dev mode"
13
15
 
14
- # def add_dev_line
15
- # end
16
-
17
16
  if ['--dev', '--game'].include?(ARGV[0])
18
17
  p "#{sourse} ==> #{dest}"
19
18
  if File.exist?(dest)
@@ -26,4 +25,3 @@ if ['--dev', '--game'].include?(ARGV[0])
26
25
  end
27
26
  end
28
27
  end
29
-
@@ -1,5 +1,5 @@
1
1
  module Codenjoy
2
2
  module Client
3
- VERSION = "0.1.007"
3
+ VERSION = "0.1.008"
4
4
  end
5
5
  end
@@ -0,0 +1,59 @@
1
+ require "codenjoy/utils"
2
+ require "codenjoy/base_board"
3
+
4
+ module Codenjoy
5
+ module Client
6
+ module Games
7
+ module Minesweeper
8
+ end
9
+ end
10
+ end
11
+ end
12
+
13
+ class Codenjoy::Client::Games::Minesweeper::Board < BaseBoard
14
+ ELEMENTS = {
15
+ BANG: 'Ѡ',
16
+ HERE_IS_BOMB: '☻',
17
+ DETECTOR: '☺',
18
+ FLAG: '‼',
19
+ HIDDEN: '*',
20
+
21
+ ONE_MINE: '1',
22
+ TWO_MINES: '2',
23
+ THREE_MINES: '3',
24
+ FOUR_MINES: '4',
25
+ FIVE_MINES: '5',
26
+ SIX_MINES: '6',
27
+ SEVEN_MINES: '7',
28
+ EIGHT_MINES: '8',
29
+
30
+ BORDER: '☼',
31
+ NONE:' ',
32
+ DESTROYED_BOMB: 'x'
33
+ }
34
+
35
+ def process(str)
36
+ puts "-------------------------------------------------------------------------------------------"
37
+ puts str
38
+ @raw = str
39
+ end
40
+
41
+ def get_me
42
+ find_by_list([:DETECTOR].map{ |e| ELEMENTS[e] })
43
+ end
44
+
45
+ def get_boarders
46
+ find_by_list([:BORDER].map{ |e| ELEMENTS[e] })
47
+ end
48
+
49
+ def flag_cell(direction)
50
+ "FLAG, #{direction}"
51
+ end
52
+
53
+ def to_s
54
+ [
55
+ "Board:",
56
+ board_to_s
57
+ ].join("\n")
58
+ end
59
+ end
@@ -0,0 +1,165 @@
1
+ require "codenjoy/utils"
2
+ require "codenjoy/base_board"
3
+
4
+ module Codenjoy
5
+ module Client
6
+ module Games
7
+ module Snakebattle
8
+ end
9
+ end
10
+ end
11
+ end
12
+
13
+ class Codenjoy::Client::Games::Snakebattle::Board < BaseBoard
14
+ ELEMENTS = {
15
+ NONE: ' ', # пустое место
16
+ WALL: '☼', # а это стенка
17
+ START_FLOOR: '#', # место старта змей
18
+ OTHER: '?', # этого ты никогда не увидишь :)
19
+
20
+ APPLE: '○', # яблоки надо кушать от них становишься длинее
21
+ STONE: '●', # а это кушать не стоит - от этого укорачиваешься
22
+ FLYING_PILL: '©', # таблетка полета - дает суперсилы
23
+ FURY_PILL: '®', # таблетка ярости - дает суперсилы
24
+ GOLD: '$', # золото - просто очки
25
+
26
+ # голова твоей змеи в разных состояниях и напрвлениях
27
+ HEAD_DOWN: '▼',
28
+ HEAD_LEFT: '◄',
29
+ HEAD_RIGHT: '►',
30
+ HEAD_UP: '▲',
31
+ HEAD_DEAD: '☻', # этот раунд ты проиграл
32
+ HEAD_EVIL: '♥', # ты скушал таблетку ярости
33
+ HEAD_FLY: '♠', # ты скушал таблетку полета
34
+ HEAD_SLEEP: '&', # твоя змейка ожидает начала раунда
35
+
36
+ # хвост твоей змейки
37
+ TAIL_END_DOWN: '╙',
38
+ TAIL_END_LEFT: '╘',
39
+ TAIL_END_UP: '╓',
40
+ TAIL_END_RIGHT: '╕',
41
+ TAIL_INACTIVE: '~',
42
+
43
+ # туловище твоей змейки
44
+ BODY_HORIZONTAL: '═',
45
+ BODY_VERTICAL: '║',
46
+ BODY_LEFT_DOWN: '╗',
47
+ BODY_LEFT_UP: '╝',
48
+ BODY_RIGHT_DOWN: '╔',
49
+ BODY_RIGHT_UP: '╚',
50
+
51
+ # змейки противников
52
+ ENEMY_HEAD_DOWN: '˅',
53
+ ENEMY_HEAD_LEFT: '<',
54
+ ENEMY_HEAD_RIGHT: '>',
55
+ ENEMY_HEAD_UP: '˄',
56
+ ENEMY_HEAD_DEAD: '☺', # этот раунд противник проиграл
57
+ ENEMY_HEAD_EVIL: '♣', # противник скушал таблетку ярости
58
+ ENEMY_HEAD_FLY: '♦', # противник скушал таблетку полета
59
+ ENEMY_HEAD_SLEEP: 'ø', # змейка противника ожидает начала раунда
60
+
61
+ # хвосты змеек противников
62
+ ENEMY_TAIL_END_DOWN: '¤',
63
+ ENEMY_TAIL_END_LEFT: '×',
64
+ ENEMY_TAIL_END_UP: 'æ',
65
+ ENEMY_TAIL_END_RIGHT: 'ö',
66
+ ENEMY_TAIL_INACTIVE: '*',
67
+
68
+ # туловище змеек противников
69
+ ENEMY_BODY_HORIZONTAL: '─',
70
+ ENEMY_BODY_VERTICAL: '│',
71
+ ENEMY_BODY_LEFT_DOWN: '┐',
72
+ ENEMY_BODY_LEFT_UP: '┘',
73
+ ENEMY_BODY_RIGHT_DOWN: '┌',
74
+ ENEMY_BODY_RIGHT_UP: '└'
75
+ }
76
+
77
+ HEAD = [
78
+ :HEAD_DOWN,
79
+ :HEAD_LEFT,
80
+ :HEAD_RIGHT,
81
+ :HEAD_UP,
82
+ :HEAD_DEAD,
83
+ :HEAD_EVIL,
84
+ :HEAD_FLY,
85
+ :HEAD_SLEEP
86
+ ]
87
+
88
+ BODY = [
89
+ :TAIL_END_DOWN,
90
+ :TAIL_END_LEFT,
91
+ :TAIL_END_UP,
92
+ :TAIL_END_RIGHT,
93
+ :TAIL_INACTIVE,
94
+ :BODY_HORIZONTAL,
95
+ :BODY_VERTICAL,
96
+ :BODY_LEFT_DOWN,
97
+ :BODY_LEFT_UP,
98
+ :BODY_RIGHT_DOWN,
99
+ :BODY_RIGHT_UP
100
+ ]
101
+
102
+ ENEMY = [
103
+ :ENEMY_HEAD_DOWN,
104
+ :ENEMY_HEAD_LEFT,
105
+ :ENEMY_HEAD_RIGHT,
106
+ :ENEMY_HEAD_UP,
107
+ :ENEMY_HEAD_DEAD,
108
+ :ENEMY_HEAD_EVIL,
109
+ :ENEMY_HEAD_FLY,
110
+ :ENEMY_HEAD_SLEEP,
111
+
112
+ :ENEMY_TAIL_END_DOWN,
113
+ :ENEMY_TAIL_END_LEFT,
114
+ :ENEMY_TAIL_END_UP,
115
+ :ENEMY_TAIL_END_RIGHT,
116
+ :ENEMY_TAIL_INACTIVE,
117
+
118
+ :ENEMY_BODY_HORIZONTAL,
119
+ :ENEMY_BODY_VERTICAL,
120
+ :ENEMY_BODY_LEFT_DOWN,
121
+ :ENEMY_BODY_LEFT_UP,
122
+ :ENEMY_BODY_RIGHT_DOWN,
123
+ :ENEMY_BODY_RIGHT_UP,
124
+ ]
125
+
126
+ def process(str)
127
+ @raw = str
128
+ end
129
+
130
+ def get_my_head
131
+ find_by_list(HEAD.map{ |e| ELEMENTS[e] })
132
+ end
133
+
134
+ def get_my_body
135
+ find_by_list((HEAD + BODY).map{ |e| ELEMENTS[e] })
136
+ end
137
+
138
+ def get_apple
139
+ find_by_list([ELEMENTS[:APPLE]])
140
+ end
141
+
142
+ def get_stone
143
+ find_by_list([ELEMENTS[:STONE]])
144
+ end
145
+
146
+ def get_enemy
147
+ find_by_list(ENEMY.map{ |e| ELEMENTS[e] })
148
+ end
149
+
150
+ def get_walls
151
+ find_by_list([ELEMENTS[:WALL]])
152
+ end
153
+
154
+ def to_s
155
+ [
156
+ "Board:",
157
+ board_to_s,
158
+ "My head at: #{get_my_head}",
159
+ "My body at: #{get_my_body}",
160
+ "Apple at: #{get_apple}",
161
+ "Stone at: #{get_stone}",
162
+ "Enemy at: #{get_enemy}"
163
+ ].join("\n")
164
+ end
165
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: codenjoy-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.007
4
+ version: 0.1.008
5
5
  platform: ruby
6
6
  authors:
7
7
  - vgulaev
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-03-16 00:00:00.000000000 Z
11
+ date: 2020-03-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faye-websocket
@@ -65,7 +65,9 @@ files:
65
65
  - lib/codenjoy/games/battlecity/board.rb
66
66
  - lib/codenjoy/games/icancode/board.rb
67
67
  - lib/codenjoy/games/loderunner/board.rb
68
+ - lib/codenjoy/games/minesweeper/board.rb
68
69
  - lib/codenjoy/games/snake/board.rb
70
+ - lib/codenjoy/games/snakebattle/board.rb
69
71
  - lib/codenjoy/games/tetris/board.rb
70
72
  - lib/codenjoy/utils.rb
71
73
  homepage: https://github.com/vgulaev/codenjoy-client