chichilku3 14.0.4 → 15.0.2
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 +4 -4
- data/bin/chichilku3 +1 -0
- data/bin/chichilku3-server +1 -0
- data/lib/client/chichilku3.rb +3 -1
- data/lib/client/client.rb +112 -59
- data/lib/client/client_cfg.rb +2 -1
- data/lib/client/gui.rb +219 -197
- data/lib/client/img/grass/single_64.png +0 -0
- data/lib/client/img/stick128/noarms/stick0.png +0 -0
- data/lib/client/img/stick128/noarms/stick1.png +0 -0
- data/lib/client/img/stick128/noarms/stick2.png +0 -0
- data/lib/client/img/stick128/noarms/stick3.png +0 -0
- data/lib/client/img/stick128/noarms/stick4.png +0 -0
- data/lib/client/img/stick128/noarms/stick5.png +0 -0
- data/lib/client/keys.rb +29 -0
- data/lib/client/particles.rb +54 -0
- data/lib/client/scoreboard.rb +29 -27
- data/lib/{client → external/gosu}/text.rb +29 -38
- data/lib/external/rubyzip/recursive.rb +58 -0
- data/lib/server/chichilku3_server.rb +169 -64
- data/lib/server/gamelogic.rb +107 -51
- data/lib/server/server_cfg.rb +2 -0
- data/lib/share/config.rb +22 -8
- data/lib/share/console.rb +22 -5
- data/lib/share/game_map.rb +279 -0
- data/lib/share/math.rb +14 -0
- data/lib/share/network.rb +47 -42
- data/lib/share/player.rb +168 -105
- data/lib/share/projectile.rb +97 -98
- data/lib/share/string.rb +24 -0
- data/server.json +3 -2
- metadata +46 -23
- data/lib/client/img/battle1024x576.png +0 -0
- data/lib/client/img/grass1024x512.png +0 -0
- data/lib/client/img/stick128/stick_noarms.png +0 -0
- data/lib/client/test.rb +0 -39
data/server.json
CHANGED
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:
|
4
|
+
version: 15.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ChillerDragon
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
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:
|
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:
|
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:
|
56
|
+
name: rspec
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
44
58
|
requirements:
|
45
59
|
- - "~>"
|
46
60
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
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:
|
68
|
+
version: 3.9.0
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
70
|
+
name: rubyzip
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
58
72
|
requirements:
|
59
73
|
- - "~>"
|
60
74
|
- !ruby/object:Gem::Version
|
61
|
-
version: 3.
|
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.
|
69
|
-
description:
|
70
|
-
|
71
|
-
|
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,20 +99,25 @@ 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/
|
108
|
+
- lib/client/img/grass/single_64.png
|
96
109
|
- lib/client/img/grey128.png
|
97
110
|
- lib/client/img/menu1920x1080.png
|
98
111
|
- lib/client/img/stick128/arm64/arm0.png
|
99
112
|
- lib/client/img/stick128/arm64/arm1.png
|
100
113
|
- lib/client/img/stick128/arm64/arm2.png
|
101
114
|
- lib/client/img/stick128/arm64/arm3.png
|
115
|
+
- lib/client/img/stick128/noarms/stick0.png
|
116
|
+
- lib/client/img/stick128/noarms/stick1.png
|
117
|
+
- lib/client/img/stick128/noarms/stick2.png
|
118
|
+
- lib/client/img/stick128/noarms/stick3.png
|
119
|
+
- lib/client/img/stick128/noarms/stick4.png
|
120
|
+
- lib/client/img/stick128/noarms/stick5.png
|
102
121
|
- lib/client/img/stick128/stick0.png
|
103
122
|
- lib/client/img/stick128/stick1.png
|
104
123
|
- lib/client/img/stick128/stick2.png
|
@@ -111,24 +130,28 @@ files:
|
|
111
130
|
- lib/client/img/stick128/stick_crouching3.png
|
112
131
|
- lib/client/img/stick128/stick_crouching4.png
|
113
132
|
- lib/client/img/stick128/stick_crouching5.png
|
114
|
-
- lib/client/
|
133
|
+
- lib/client/keys.rb
|
134
|
+
- lib/client/particles.rb
|
115
135
|
- lib/client/scoreboard.rb
|
116
|
-
- lib/
|
117
|
-
- lib/
|
136
|
+
- lib/external/gosu/text.rb
|
137
|
+
- lib/external/rubyzip/recursive.rb
|
118
138
|
- lib/server/chichilku3_server.rb
|
119
139
|
- lib/server/gamelogic.rb
|
120
140
|
- lib/server/server_cfg.rb
|
121
141
|
- lib/share/config.rb
|
122
142
|
- lib/share/console.rb
|
143
|
+
- lib/share/game_map.rb
|
144
|
+
- lib/share/math.rb
|
123
145
|
- lib/share/network.rb
|
124
146
|
- lib/share/player.rb
|
125
147
|
- lib/share/projectile.rb
|
148
|
+
- lib/share/string.rb
|
126
149
|
- server.json
|
127
150
|
homepage: https://github.com/chichilku/chichilku3
|
128
151
|
licenses:
|
129
152
|
- Unlicense
|
130
153
|
metadata: {}
|
131
|
-
post_install_message:
|
154
|
+
post_install_message:
|
132
155
|
rdoc_options: []
|
133
156
|
require_paths:
|
134
157
|
- lib
|
@@ -136,15 +159,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
136
159
|
requirements:
|
137
160
|
- - ">="
|
138
161
|
- !ruby/object:Gem::Version
|
139
|
-
version:
|
162
|
+
version: 2.5.0
|
140
163
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
141
164
|
requirements:
|
142
165
|
- - ">="
|
143
166
|
- !ruby/object:Gem::Version
|
144
167
|
version: '0'
|
145
168
|
requirements: []
|
146
|
-
rubygems_version: 3.
|
147
|
-
signing_key:
|
169
|
+
rubygems_version: 3.2.32
|
170
|
+
signing_key:
|
148
171
|
specification_version: 4
|
149
172
|
summary: Stick battle game
|
150
173
|
test_files: []
|
Binary file
|
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
|