chichilku3 14.0.3 → 15.0.1

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.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/bin/chichilku3 +1 -0
  3. data/bin/chichilku3-server +1 -0
  4. data/lib/client/chichilku3.rb +3 -1
  5. data/lib/client/client.rb +112 -59
  6. data/lib/client/client_cfg.rb +2 -1
  7. data/lib/client/gui.rb +219 -197
  8. data/lib/client/img/stick128/arm64/arm0.png +0 -0
  9. data/lib/client/img/stick128/arm64/arm1.png +0 -0
  10. data/lib/client/img/stick128/arm64/arm2.png +0 -0
  11. data/lib/client/img/stick128/arm64/arm3.png +0 -0
  12. data/lib/client/img/stick128/noarms/stick0.png +0 -0
  13. data/lib/client/img/stick128/noarms/stick1.png +0 -0
  14. data/lib/client/img/stick128/noarms/stick2.png +0 -0
  15. data/lib/client/img/stick128/noarms/stick3.png +0 -0
  16. data/lib/client/img/stick128/noarms/stick4.png +0 -0
  17. data/lib/client/img/stick128/noarms/stick5.png +0 -0
  18. data/lib/client/keys.rb +29 -0
  19. data/lib/client/particles.rb +54 -0
  20. data/lib/client/scoreboard.rb +29 -27
  21. data/lib/{client → external/gosu}/text.rb +29 -38
  22. data/lib/external/rubyzip/recursive.rb +58 -0
  23. data/lib/server/chichilku3_server.rb +169 -64
  24. data/lib/server/gamelogic.rb +107 -51
  25. data/lib/server/server_cfg.rb +2 -0
  26. data/lib/share/config.rb +21 -7
  27. data/lib/share/console.rb +22 -5
  28. data/lib/share/game_map.rb +279 -0
  29. data/lib/share/math.rb +14 -0
  30. data/lib/share/network.rb +47 -42
  31. data/lib/share/player.rb +168 -105
  32. data/lib/share/projectile.rb +97 -98
  33. data/lib/share/string.rb +24 -0
  34. data/server.json +3 -2
  35. metadata +49 -23
  36. data/lib/client/img/battle1024x576.png +0 -0
  37. data/lib/client/img/grass1024x512.png +0 -0
  38. data/lib/client/img/stick128/stick_noarms.png +0 -0
  39. data/lib/client/test.rb +0 -39
data/server.json CHANGED
@@ -1,4 +1,5 @@
1
1
  {
2
- "port": 9900
2
+ "port": 9900,
3
+ "max_clients_per_ip": 2,
4
+ "map": ""
3
5
  }
4
-
metadata CHANGED
@@ -1,29 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chichilku3
3
3
  version: !ruby/object:Gem::Version
4
- version: 14.0.3
4
+ version: 15.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - ChillerDragon
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-01 00:00:00.000000000 Z
11
+ date: 2022-05-26 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: fileutils
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 1.2.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 1.2.0
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: gosu
15
29
  requirement: !ruby/object:Gem::Requirement
16
30
  requirements:
17
31
  - - "~>"
18
32
  - !ruby/object:Gem::Version
19
- version: 0.15.2
33
+ version: 1.4.3
20
34
  type: :runtime
21
35
  prerelease: false
22
36
  version_requirements: !ruby/object:Gem::Requirement
23
37
  requirements:
24
38
  - - "~>"
25
39
  - !ruby/object:Gem::Version
26
- version: 0.15.2
40
+ version: 1.4.3
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: os
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -39,36 +53,36 @@ dependencies:
39
53
  - !ruby/object:Gem::Version
40
54
  version: 1.0.1
41
55
  - !ruby/object:Gem::Dependency
42
- name: fileutils
56
+ name: rspec
43
57
  requirement: !ruby/object:Gem::Requirement
44
58
  requirements:
45
59
  - - "~>"
46
60
  - !ruby/object:Gem::Version
47
- version: 1.2.0
61
+ version: 3.9.0
48
62
  type: :runtime
49
63
  prerelease: false
50
64
  version_requirements: !ruby/object:Gem::Requirement
51
65
  requirements:
52
66
  - - "~>"
53
67
  - !ruby/object:Gem::Version
54
- version: 1.2.0
68
+ version: 3.9.0
55
69
  - !ruby/object:Gem::Dependency
56
- name: rspec
70
+ name: rubyzip
57
71
  requirement: !ruby/object:Gem::Requirement
58
72
  requirements:
59
73
  - - "~>"
60
74
  - !ruby/object:Gem::Version
61
- version: 3.9.0
75
+ version: 2.3.0
62
76
  type: :runtime
63
77
  prerelease: false
64
78
  version_requirements: !ruby/object:Gem::Requirement
65
79
  requirements:
66
80
  - - "~>"
67
81
  - !ruby/object:Gem::Version
68
- version: 3.9.0
69
- description: Simple 2d online multiplayer stick figure battle game using the gosu
70
- (SDL2 based) gem for client side graphics. The network protocol is tcp based and
71
- only using ASCII printable characters.
82
+ version: 2.3.0
83
+ description: |2
84
+ Simple 2d online multiplayer stick figure battle game using the gosu (SDL2 based) gem for client side graphics.
85
+ The network protocol is tcp based and only using ASCII printable characters.
72
86
  email: ChillerDragon@gmail.com
73
87
  executables:
74
88
  - chichilku3
@@ -85,16 +99,24 @@ files:
85
99
  - lib/client/gui.rb
86
100
  - lib/client/img/arrow64.png
87
101
  - lib/client/img/background1024x512.png
88
- - lib/client/img/battle1024x576.png
89
102
  - lib/client/img/bow64/bow0.png
90
103
  - lib/client/img/bow64/bow1.png
91
104
  - lib/client/img/bow64/bow2.png
92
105
  - lib/client/img/bow64/bow3.png
93
106
  - lib/client/img/connecting1024x512.png
94
107
  - lib/client/img/crosshair128x128.png
95
- - lib/client/img/grass1024x512.png
96
108
  - lib/client/img/grey128.png
97
109
  - lib/client/img/menu1920x1080.png
110
+ - lib/client/img/stick128/arm64/arm0.png
111
+ - lib/client/img/stick128/arm64/arm1.png
112
+ - lib/client/img/stick128/arm64/arm2.png
113
+ - lib/client/img/stick128/arm64/arm3.png
114
+ - lib/client/img/stick128/noarms/stick0.png
115
+ - lib/client/img/stick128/noarms/stick1.png
116
+ - lib/client/img/stick128/noarms/stick2.png
117
+ - lib/client/img/stick128/noarms/stick3.png
118
+ - lib/client/img/stick128/noarms/stick4.png
119
+ - lib/client/img/stick128/noarms/stick5.png
98
120
  - lib/client/img/stick128/stick0.png
99
121
  - lib/client/img/stick128/stick1.png
100
122
  - lib/client/img/stick128/stick2.png
@@ -107,24 +129,28 @@ files:
107
129
  - lib/client/img/stick128/stick_crouching3.png
108
130
  - lib/client/img/stick128/stick_crouching4.png
109
131
  - lib/client/img/stick128/stick_crouching5.png
110
- - lib/client/img/stick128/stick_noarms.png
132
+ - lib/client/keys.rb
133
+ - lib/client/particles.rb
111
134
  - lib/client/scoreboard.rb
112
- - lib/client/test.rb
113
- - lib/client/text.rb
135
+ - lib/external/gosu/text.rb
136
+ - lib/external/rubyzip/recursive.rb
114
137
  - lib/server/chichilku3_server.rb
115
138
  - lib/server/gamelogic.rb
116
139
  - lib/server/server_cfg.rb
117
140
  - lib/share/config.rb
118
141
  - lib/share/console.rb
142
+ - lib/share/game_map.rb
143
+ - lib/share/math.rb
119
144
  - lib/share/network.rb
120
145
  - lib/share/player.rb
121
146
  - lib/share/projectile.rb
147
+ - lib/share/string.rb
122
148
  - server.json
123
149
  homepage: https://github.com/chichilku/chichilku3
124
150
  licenses:
125
151
  - Unlicense
126
152
  metadata: {}
127
- post_install_message:
153
+ post_install_message:
128
154
  rdoc_options: []
129
155
  require_paths:
130
156
  - lib
@@ -132,15 +158,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
132
158
  requirements:
133
159
  - - ">="
134
160
  - !ruby/object:Gem::Version
135
- version: '0'
161
+ version: 2.5.0
136
162
  required_rubygems_version: !ruby/object:Gem::Requirement
137
163
  requirements:
138
164
  - - ">="
139
165
  - !ruby/object:Gem::Version
140
166
  version: '0'
141
167
  requirements: []
142
- rubygems_version: 3.0.3
143
- signing_key:
168
+ rubygems_version: 3.2.32
169
+ signing_key:
144
170
  specification_version: 4
145
171
  summary: Stick battle game
146
172
  test_files: []
Binary file
Binary file
data/lib/client/test.rb DELETED
@@ -1,39 +0,0 @@
1
- require_relative '../share/player'
2
-
3
- def server_package_to_player_strs(slots, data)
4
- players = []
5
- slots.times do |index|
6
- players[index] = data[index * 8..index * 8 + 7]
7
- end
8
- players
9
- end
10
-
11
- def player_strs_to_objects(player_strs)
12
- players = []
13
- player_strs.each do |player_str|
14
- id = player_str[0..1].to_i
15
- x = player_str[2..4].to_i
16
- y = player_str[5..7].to_i
17
- # puts "id: #{id} x: #{x} y: #{y}"
18
- players << Player.new(id, x, y) unless id.zero?
19
- end
20
- players
21
- end
22
-
23
- def server_package_to_player_array(data)
24
- # /(?<count>\d{2})(?<player>(?<id>\d{2})(?<x>\d{3})(?<y>\d{3}))/
25
- slots = data[0..1].to_i # save slots
26
- data = data[2..-1] # cut slots off
27
- players = server_package_to_player_strs(slots, data)
28
- # puts players
29
- player_strs_to_objects(players)
30
- end
31
-
32
- # 3 players
33
- pl3 = '03011001010220020203300303'
34
- p server_package_to_player_array(pl3)
35
- p server_package_to_player_array(pl3).count
36
- # 2 players (first has id 00 -> offline)
37
- pl2 = '03001001010220020203300303'
38
- p server_package_to_player_array(pl2)
39
- p server_package_to_player_array(pl2).count