pktool 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +64 -0
- data/Gemfile +10 -0
- data/Gemfile.lock +87 -0
- data/Guardfile +39 -0
- data/LICENSE.txt +22 -0
- data/README.md +60 -0
- data/Rakefile +1 -0
- data/bin/pktool +2 -0
- data/data/nature.json +4 -0
- data/data/pokemonData.sqlite +0 -0
- data/data/type.json +21 -0
- data/data/user/party.json +1 -0
- data/lib/builder.rb +56 -0
- data/lib/cli.rb +62 -0
- data/lib/command/party.rb +50 -0
- data/lib/database.rb +5 -0
- data/lib/exceptions.rb +4 -0
- data/lib/log.rb +16 -0
- data/lib/move.rb +51 -0
- data/lib/party.rb +42 -0
- data/lib/pktool.rb +6 -0
- data/lib/pokemon.rb +99 -0
- data/lib/version.rb +3 -0
- data/pktool.gemspec +28 -0
- data/pktool.rb +4 -0
- data/spec/move_spec.rb +29 -0
- data/spec/pokemon_spec.rb +38 -0
- data/spec/spec_helper.rb +17 -0
- metadata +174 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 93dca54abe2ff355a7fd9f6043a685163eac9151
|
4
|
+
data.tar.gz: b1d40d852d5a8fa632887e9ed8551cc5fa3f6169
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: b3f7f272ba9caebf21959fb08c2eed9f9014598eaac8c504781f6e471697b7f486a854f94340d20baca6c0d561f836717a3f818cf68ceeebf31f150fa4922491
|
7
|
+
data.tar.gz: 68ff3b69904507e2430d90e58a464b0fc1c43e08b9bbda9dd62823e87491e7f07c5c21c4b483e2293ea72d78d52e2a370a6cc3bafda4ee1fa4ef936ff12acbbb
|
data/.gitignore
ADDED
@@ -0,0 +1,64 @@
|
|
1
|
+
### https://raw.github.com/github/gitignore/dee587fee0df4dfdaa7a5edd78a746602978344a/ruby.gitignore
|
2
|
+
|
3
|
+
*.gem
|
4
|
+
*.rbc
|
5
|
+
/.config
|
6
|
+
/coverage/
|
7
|
+
/InstalledFiles
|
8
|
+
/pkg/
|
9
|
+
/spec/reports/
|
10
|
+
/test/tmp/
|
11
|
+
/test/version_tmp/
|
12
|
+
/tmp/
|
13
|
+
|
14
|
+
## Specific to RubyMotion:
|
15
|
+
.dat*
|
16
|
+
.repl_history
|
17
|
+
build/
|
18
|
+
|
19
|
+
## Documentation cache and generated files:
|
20
|
+
/.yardoc/
|
21
|
+
/_yardoc/
|
22
|
+
/doc/
|
23
|
+
/rdoc/
|
24
|
+
|
25
|
+
## Environment normalisation:
|
26
|
+
/.bundle/
|
27
|
+
/lib/bundler/man/
|
28
|
+
|
29
|
+
# for a library or gem, you might want to ignore these files since the code is
|
30
|
+
# intended to run in multiple environments; otherwise, check them in:
|
31
|
+
# Gemfile.lock
|
32
|
+
# .ruby-version
|
33
|
+
# .ruby-gemset
|
34
|
+
|
35
|
+
# unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
|
36
|
+
.rvmrc
|
37
|
+
|
38
|
+
|
39
|
+
### https://raw.github.com/github/gitignore/dee587fee0df4dfdaa7a5edd78a746602978344a/Global/OSX.gitignore
|
40
|
+
|
41
|
+
.DS_Store
|
42
|
+
.AppleDouble
|
43
|
+
.LSOverride
|
44
|
+
|
45
|
+
# Icon must end with two \r
|
46
|
+
Icon
|
47
|
+
|
48
|
+
# Thumbnails
|
49
|
+
._*
|
50
|
+
|
51
|
+
# Files that might appear on external disk
|
52
|
+
.Spotlight-V100
|
53
|
+
.Trashes
|
54
|
+
|
55
|
+
# Directories potentially created on remote AFP share
|
56
|
+
.AppleDB
|
57
|
+
.AppleDesktop
|
58
|
+
Network Trash Folder
|
59
|
+
Temporary Items
|
60
|
+
.apdisk
|
61
|
+
|
62
|
+
|
63
|
+
|
64
|
+
/data/user/member.json
|
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,87 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
pktool (0.1.0)
|
5
|
+
|
6
|
+
GEM
|
7
|
+
remote: https://rubygems.org/
|
8
|
+
specs:
|
9
|
+
byebug (3.5.1)
|
10
|
+
columnize (~> 0.8)
|
11
|
+
debugger-linecache (~> 1.2)
|
12
|
+
slop (~> 3.6)
|
13
|
+
celluloid (0.16.0)
|
14
|
+
timers (~> 4.0.0)
|
15
|
+
coderay (1.1.0)
|
16
|
+
columnize (0.8.9)
|
17
|
+
debugger-linecache (1.2.0)
|
18
|
+
diff-lcs (1.2.5)
|
19
|
+
ffi (1.9.6)
|
20
|
+
formatador (0.2.5)
|
21
|
+
guard (2.10.1)
|
22
|
+
formatador (>= 0.2.4)
|
23
|
+
listen (~> 2.7)
|
24
|
+
lumberjack (~> 1.0)
|
25
|
+
pry (>= 0.9.12)
|
26
|
+
thor (>= 0.18.1)
|
27
|
+
guard-rspec (4.3.1)
|
28
|
+
guard (~> 2.1)
|
29
|
+
rspec (>= 2.14, < 4.0)
|
30
|
+
hitimes (1.2.2)
|
31
|
+
listen (2.8.3)
|
32
|
+
celluloid (>= 0.15.2)
|
33
|
+
rb-fsevent (>= 0.9.3)
|
34
|
+
rb-inotify (>= 0.9)
|
35
|
+
lumberjack (1.0.9)
|
36
|
+
method_source (0.8.2)
|
37
|
+
pry (0.10.1)
|
38
|
+
coderay (~> 1.1.0)
|
39
|
+
method_source (~> 0.8.1)
|
40
|
+
slop (~> 3.4)
|
41
|
+
pry-byebug (2.0.0)
|
42
|
+
byebug (~> 3.4)
|
43
|
+
pry (~> 0.10)
|
44
|
+
rake (10.4.1)
|
45
|
+
rb-fsevent (0.9.4)
|
46
|
+
rb-inotify (0.9.5)
|
47
|
+
ffi (>= 0.5.0)
|
48
|
+
romaji (0.2.1)
|
49
|
+
rake (>= 0.8.0)
|
50
|
+
rspec (3.1.0)
|
51
|
+
rspec-core (~> 3.1.0)
|
52
|
+
rspec-expectations (~> 3.1.0)
|
53
|
+
rspec-mocks (~> 3.1.0)
|
54
|
+
rspec-core (3.1.7)
|
55
|
+
rspec-support (~> 3.1.0)
|
56
|
+
rspec-expectations (3.1.2)
|
57
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
58
|
+
rspec-support (~> 3.1.0)
|
59
|
+
rspec-mocks (3.1.3)
|
60
|
+
rspec-support (~> 3.1.0)
|
61
|
+
rspec-support (3.1.2)
|
62
|
+
sequel (4.17.0)
|
63
|
+
slop (3.6.0)
|
64
|
+
sqlite3 (1.3.10)
|
65
|
+
termcolorlight (1.1.1)
|
66
|
+
thor (0.19.1)
|
67
|
+
timers (4.0.1)
|
68
|
+
hitimes
|
69
|
+
|
70
|
+
PLATFORMS
|
71
|
+
ruby
|
72
|
+
|
73
|
+
DEPENDENCIES
|
74
|
+
bundler (~> 1.3)
|
75
|
+
guard
|
76
|
+
guard-rspec
|
77
|
+
pktool!
|
78
|
+
pry
|
79
|
+
pry-byebug
|
80
|
+
rake
|
81
|
+
romaji
|
82
|
+
rspec
|
83
|
+
rspec-core
|
84
|
+
sequel
|
85
|
+
sqlite3
|
86
|
+
termcolorlight
|
87
|
+
thor
|
data/Guardfile
ADDED
@@ -0,0 +1,39 @@
|
|
1
|
+
# A sample Guardfile
|
2
|
+
# More info at https://github.com/guard/guard#readme
|
3
|
+
|
4
|
+
## Uncomment and set this to only include directories you want to watch
|
5
|
+
# directories %(app lib config test spec feature)
|
6
|
+
|
7
|
+
## Uncomment to clear the screen before every task
|
8
|
+
# clearing :on
|
9
|
+
|
10
|
+
# Note: The cmd option is now required due to the increasing number of ways
|
11
|
+
# rspec may be run, below are examples of the most common uses.
|
12
|
+
# * bundler: 'bundle exec rspec'
|
13
|
+
# * bundler binstubs: 'bin/rspec'
|
14
|
+
# * spring: 'bin/rsspec' (This will use spring if running and you have
|
15
|
+
# installed the spring binstubs per the docs)
|
16
|
+
# * zeus: 'zeus rspec' (requires the server to be started separetly)
|
17
|
+
# * 'just' rspec: 'rspec'
|
18
|
+
guard :rspec, cmd: 'bundle exec rspec -c' do
|
19
|
+
watch(%r{^spec/.+_spec\.rb$})
|
20
|
+
watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
|
21
|
+
watch('spec/spec_helper.rb') { "spec" }
|
22
|
+
|
23
|
+
# Rails example
|
24
|
+
watch(%r{^app/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
|
25
|
+
watch(%r{^app/(.*)(\.erb|\.haml|\.slim)$}) { |m| "spec/#{m[1]}#{m[2]}_spec.rb" }
|
26
|
+
watch(%r{^app/controllers/(.+)_(controller)\.rb$}) { |m| ["spec/routing/#{m[1]}_routing_spec.rb", "spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb", "spec/acceptance/#{m[1]}_spec.rb"] }
|
27
|
+
watch(%r{^spec/support/(.+)\.rb$}) { "spec" }
|
28
|
+
watch('config/routes.rb') { "spec/routing" }
|
29
|
+
watch('app/controllers/application_controller.rb') { "spec/controllers" }
|
30
|
+
watch('spec/rails_helper.rb') { "spec" }
|
31
|
+
|
32
|
+
# Capybara features specs
|
33
|
+
watch(%r{^app/views/(.+)/.*\.(erb|haml|slim)$}) { |m| "spec/features/#{m[1]}_spec.rb" }
|
34
|
+
|
35
|
+
# Turnip features and steps
|
36
|
+
watch(%r{^spec/acceptance/(.+)\.feature$})
|
37
|
+
watch(%r{^spec/acceptance/steps/(.+)_steps\.rb$}) { |m| Dir[File.join("**/#{m[1]}.feature")][0] || 'spec/acceptance' }
|
38
|
+
end
|
39
|
+
|
data/LICENSE.txt
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2014 uzimith
|
2
|
+
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
a copy of this software and associated documentation files (the
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,60 @@
|
|
1
|
+
他の計算機と合わないのでダメージ計算式が間違っているようです。
|
2
|
+
|
3
|
+
# Pktool
|
4
|
+
Pktoolはポケモンのレート対戦の技選択時間1分の間になるべく様々な情報を得ることを目標としたツールです。
|
5
|
+
オフラインで動作するため、高速での検索を可能とします。
|
6
|
+
|
7
|
+
1. ダメージ計算(開発中)
|
8
|
+
2. ポケモンの能力値確認
|
9
|
+
3. パーティメモ(開発中)
|
10
|
+
4. 素早さ確認(開発中)
|
11
|
+
|
12
|
+
データはとりあえず暇ツール(http://blog.livedoor.jp/hima_shi/)のデータベースからです。
|
13
|
+
|
14
|
+
## 使い方
|
15
|
+
|
16
|
+
```
|
17
|
+
$ pktool info
|
18
|
+
|
19
|
+
なまえ>ガブリアス
|
20
|
+
せいかく>いじっぱり
|
21
|
+
努力値(default: 0)>hAS
|
22
|
+
個体値(default: 6V)>
|
23
|
+
種族値
|
24
|
+
H:108 A:130 B:95 C:80 D:85 S:102 重さ:95.0
|
25
|
+
能力値
|
26
|
+
H:184 A:200 B:115 C:90 D:105 S:154
|
27
|
+
```
|
28
|
+
|
29
|
+
```
|
30
|
+
$ pktool damage
|
31
|
+
攻撃側の指定
|
32
|
+
なまえ>ガブリアス
|
33
|
+
せいかく>いじっぱり
|
34
|
+
努力値(default: 0)>AS
|
35
|
+
個体値(default: 6V)>
|
36
|
+
防御側の指定
|
37
|
+
なまえ>クレセリア
|
38
|
+
せいかく>ずぶとい
|
39
|
+
努力値(default: 0)>HB
|
40
|
+
個体値(default: 6V)>
|
41
|
+
技の指定
|
42
|
+
わざ>げきりん
|
43
|
+
|
44
|
+
攻撃側
|
45
|
+
ガブリアス H:183 A:200 B:115 C:90 D:105 S:154
|
46
|
+
防御側
|
47
|
+
クレセリア H:227 A:81 B:189 C:95 D:150 S:105
|
48
|
+
|
49
|
+
min:72 max:85
|
50
|
+
確定数:4回 (31.72%)
|
51
|
+
|
52
|
+
```
|
53
|
+
|
54
|
+
## Contributing
|
55
|
+
|
56
|
+
1. Fork it
|
57
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
58
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
59
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
60
|
+
5. Create new Pull Request
|
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require "bundler/gem_tasks"
|
data/bin/pktool
ADDED
data/data/nature.json
ADDED
Binary file
|
data/data/type.json
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
{
|
2
|
+
"ノーマル" : {"ノーマル" : 1, "ほのお" : 1, "みず" : 1, "でんき" : 1, "くさ" : 1, "こおり" : 1, "かくとう" : 2, "どく" : 1, "じめん" : 1, "ひこう" : 1, "エスパー" : 1, "むし" : 1, "いわ" : 1, "ゴースト" : 0, "ドラゴン" : 1, "あく" : 1, "はがね" : 1, "フェアリー" : 1},
|
3
|
+
"ほのお" : {"ノーマル" : 1, "ほのお" : 0.5, "みず" : 2, "でんき" : 1, "くさ" : 0.5, "こおり" : 0.5, "かくとう" : 1, "どく" : 1, "じめん" : 2, "ひこう" : 1, "エスパー" : 1, "むし" : 0.5, "いわ" : 2, "ゴースト" : 1, "ドラゴン" : 1, "あく" : 1, "はがね" : 0.5, "フェアリー" : 0.5},
|
4
|
+
"みず" : {"ノーマル" : 1, "ほのお" : 0.5, "みず" : 0.5, "でんき" : 2, "くさ" : 2, "こおり" : 0.5, "かくとう" : 1, "どく" : 1, "じめん" : 1, "ひこう" : 1, "エスパー" : 1, "むし" : 1, "いわ" : 1, "ゴースト" : 1, "ドラゴン" : 1, "あく" : 1, "はがね" : 0.5, "フェアリー" : 1},
|
5
|
+
"でんき" : {"ノーマル" : 1, "ほのお" : 1, "みず" : 1, "でんき" : 0.5, "くさ" : 1, "こおり" : 1, "かくとう" : 1, "どく" : 1, "じめん" : 2, "ひこう" : 0.5, "エスパー" : 1, "むし" : 1, "いわ" : 1, "ゴースト" : 1, "ドラゴン" : 1, "あく" : 1, "はがね" : 0.5, "フェアリー" : 1},
|
6
|
+
"くさ" : {"ノーマル" : 1, "ほのお" : 2, "みず" : 0.5, "でんき" : 0.5, "くさ" : 0.5, "こおり" : 2, "かくとう" : 1, "どく" : 2, "じめん" : 0.5, "ひこう" : 2, "エスパー" : 1, "むし" : 2, "いわ" : 1, "ゴースト" : 1, "ドラゴン" : 1, "あく" : 1, "はがね" : 1, "フェアリー" : 1},
|
7
|
+
"こおり" : {"ノーマル" : 1, "ほのお" : 2, "みず" : 1, "でんき" : 1, "くさ" : 1, "こおり" : 0.5, "かくとう" : 2, "どく" : 1, "じめん" : 1, "ひこう" : 1, "エスパー" : 1, "むし" : 1, "いわ" : 2, "ゴースト" : 1, "ドラゴン" : 1, "あく" : 1, "はがね" : 2, "フェアリー" : 1},
|
8
|
+
"かくとう" : {"ノーマル" : 1, "ほのお" : 1, "みず" : 1, "でんき" : 1, "くさ" : 1, "こおり" : 1, "かくとう" : 1, "どく" : 1, "じめん" : 1, "ひこう" : 2, "エスパー" : 2, "むし" : 0.5, "いわ" : 0.5, "ゴースト" : 1, "ドラゴン" : 1, "あく" : 0.5, "はがね" : 1, "フェアリー" : 2},
|
9
|
+
"どく" : {"ノーマル" : 1, "ほのお" : 1, "みず" : 1, "でんき" : 1, "くさ" : 0.5, "こおり" : 1, "かくとう" : 0.5, "どく" : 0.5, "じめん" : 2, "ひこう" : 1, "エスパー" : 2, "むし" : 0.5, "いわ" : 1, "ゴースト" : 1, "ドラゴン" : 1, "あく" : 1, "はがね" : 1, "フェアリー" : 0.5},
|
10
|
+
"じめん" : {"ノーマル" : 1, "ほのお" : 1, "みず" : 2, "でんき" : 0, "くさ" : 2, "こおり" : 2, "かくとう" : 1, "どく" : 0.5, "じめん" : 1, "ひこう" : 1, "エスパー" : 1, "むし" : 1, "いわ" : 0.5, "ゴースト" : 1, "ドラゴン" : 1, "あく" : 1, "はがね" : 1, "フェアリー" : 1},
|
11
|
+
"ひこう" : {"ノーマル" : 1, "ほのお" : 1, "みず" : 1, "でんき" : 2, "くさ" : 0.5, "こおり" : 2, "かくとう" : 0.5, "どく" : 1, "じめん" : 0, "ひこう" : 1, "エスパー" : 1, "むし" : 0.5, "いわ" : 2, "ゴースト" : 1, "ドラゴン" : 1, "あく" : 1, "はがね" : 1, "フェアリー" : 1},
|
12
|
+
"エスパー" : {"ノーマル" : 1, "ほのお" : 1, "みず" : 1, "でんき" : 1, "くさ" : 1, "こおり" : 1, "かくとう" : 0.5, "どく" : 1, "じめん" : 1, "ひこう" : 1, "エスパー" : 0.5, "むし" : 2, "いわ" : 1, "ゴースト" : 2, "ドラゴン" : 1, "あく" : 2, "はがね" : 1, "フェアリー" : 1},
|
13
|
+
"むし" : {"ノーマル" : 1, "ほのお" : 2, "みず" : 1, "でんき" : 1, "くさ" : 0.5, "こおり" : 1, "かくとう" : 0.5, "どく" : 1, "じめん" : 0.5, "ひこう" : 2, "エスパー" : 1, "むし" : 1, "いわ" : 2, "ゴースト" : 1, "ドラゴン" : 1, "あく" : 1, "はがね" : 1, "フェアリー" : 1},
|
14
|
+
"いわ" : {"ノーマル" : 0.5, "ほのお" : 0.5, "みず" : 2, "でんき" : 1, "くさ" : 2, "こおり" : 1, "かくとう" : 2, "どく" : 0.5, "じめん" : 2, "ひこう" : 0.5, "エスパー" : 1, "むし" : 1, "いわ" : 1, "ゴースト" : 1, "ドラゴン" : 1, "あく" : 1, "はがね" : 2, "フェアリー" : 1},
|
15
|
+
"ゴースト" : {"ノーマル" : 0, "ほのお" : 1, "みず" : 1, "でんき" : 1, "くさ" : 1, "こおり" : 1, "かくとう" : 0, "どく" : 0.5, "じめん" : 1, "ひこう" : 1, "エスパー" : 1, "むし" : 0.5, "いわ" : 1, "ゴースト" : 2, "ドラゴン" : 1, "あく" : 2, "はがね" : 1, "フェアリー" : 1},
|
16
|
+
"ドラゴン" : {"ノーマル" : 1, "ほのお" : 0.5, "みず" : 0.5, "でんき" : 0.5, "くさ" : 0.5, "こおり" : 2, "かくとう" : 1, "どく" : 1, "じめん" : 1, "ひこう" : 1, "エスパー" : 1, "むし" : 1, "いわ" : 1, "ゴースト" : 1, "ドラゴン" : 2, "あく" : 1, "はがね" : 1, "フェアリー" : 2},
|
17
|
+
"あく" : {"ノーマル" : 1, "ほのお" : 1, "みず" : 1, "でんき" : 1, "くさ" : 1, "こおり" : 1, "かくとう" : 2, "どく" : 1, "じめん" : 1, "ひこう" : 1, "エスパー" : 0, "むし" : 2, "いわ" : 1, "ゴースト" : 0.5, "ドラゴン" : 1, "あく" : 0.5, "はがね" : 1, "フェアリー" : 2},
|
18
|
+
"はがね" : {"ノーマル" : 0.5, "ほのお" : 2, "みず" : 1, "でんき" : 1, "くさ" : 0.5, "こおり" : 0.5, "かくとう" : 2, "どく" : 0, "じめん" : 2, "ひこう" : 0.5, "エスパー" : 0.5, "むし" : 0.5, "いわ" : 0.5, "ゴースト" : 1, "ドラゴン" : 0.5, "あく" : 1, "はがね" : 0.5, "フェアリー" : 0.5},
|
19
|
+
"フェアリー" : {"ノーマル" : 1, "ほのお" : 1, "みず" : 1, "でんき" : 1, "くさ" : 1, "こおり" : 1, "かくとう" : 0.5, "どく" : 2, "じめん" : 1, "ひこう" : 1, "エスパー" : 1, "むし" : 0.5, "いわ" : 1, "ゴースト" : 1, "ドラゴン" : 0, "あく" : 0.5, "はがね" : 2, "フェアリー" : 1 }
|
20
|
+
}
|
21
|
+
|
@@ -0,0 +1 @@
|
|
1
|
+
[{"pokemon":"ガブリアス","item":"","ability":1,"effort_value":{"H":31,"A":31,"B":31,"C":31,"D":31,"S":31},"individual_value":{"H":0,"A":0,"B":0,"C":0,"D":0,"S":0}},{"pokemon":"ボーマンダ","item":"","ability":1,"effort_value":{"H":31,"A":31,"B":31,"C":31,"D":31,"S":31},"individual_value":{"H":31,"A":31,"B":31,"C":31,"D":31,"S":31}}]
|
data/lib/builder.rb
ADDED
@@ -0,0 +1,56 @@
|
|
1
|
+
require_relative 'pokemon'
|
2
|
+
require_relative 'move'
|
3
|
+
require_relative 'log'
|
4
|
+
|
5
|
+
module Pktool
|
6
|
+
|
7
|
+
class Builder
|
8
|
+
|
9
|
+
def self.pokemon
|
10
|
+
pokemons = Pokemon.select_map(:name)
|
11
|
+
natures = Pokemon::Nature.select_map(:name)
|
12
|
+
name = fetch("なまえ", pokemons)
|
13
|
+
feature = {}
|
14
|
+
feature[:nature] = fetch("せいかく", natures) do |input| input.to_sym end
|
15
|
+
feature[:effort_value] = fetch("努力値(default: 0)") do |input|
|
16
|
+
if(Pokemon.ways.include?(input.to_sym))
|
17
|
+
input.to_sym
|
18
|
+
else
|
19
|
+
{ H: 0, A: 0, B: 0, C: 0, D: 0, S: 0 }
|
20
|
+
end
|
21
|
+
end
|
22
|
+
feature[:individual_value] = fetch("個体値(default: 6V)") do |input|
|
23
|
+
{ H: 31, A: 31, B: 31, C: 31, D: 31, S: 31 }
|
24
|
+
end
|
25
|
+
return Pokemon.fetch(name, feature)
|
26
|
+
end
|
27
|
+
|
28
|
+
def self.move(attacker, defender)
|
29
|
+
moves = Move.select_map(:name)
|
30
|
+
move = fetch("わざ", moves)
|
31
|
+
move = Move.fetch(move, attacker, defender)
|
32
|
+
end
|
33
|
+
|
34
|
+
def self.fetch(name, completion = [])
|
35
|
+
Readline.completion_append_character = ""
|
36
|
+
Readline.completion_proc = proc {|s|
|
37
|
+
completion.grep(/^#{Romaji.romaji2kana(s)}|#{Romaji.romaji2kana(s, :kana_type => :hiragana)}/)
|
38
|
+
}
|
39
|
+
begin
|
40
|
+
fetch = ::Readline.readline(name + '>', true)
|
41
|
+
raise Error, "対象が見つかりません" unless completion.empty? or completion.include?(fetch)
|
42
|
+
if block_given?
|
43
|
+
return yield(fetch)
|
44
|
+
else
|
45
|
+
return fetch
|
46
|
+
end
|
47
|
+
rescue Error => e
|
48
|
+
Log::error e.message
|
49
|
+
retry
|
50
|
+
end
|
51
|
+
|
52
|
+
end
|
53
|
+
|
54
|
+
end
|
55
|
+
|
56
|
+
end
|
data/lib/cli.rb
ADDED
@@ -0,0 +1,62 @@
|
|
1
|
+
require 'thor'
|
2
|
+
require 'thor/group'
|
3
|
+
require 'romaji'
|
4
|
+
require 'romaji/core_ext/string'
|
5
|
+
require_relative "log"
|
6
|
+
require_relative "version"
|
7
|
+
require_relative "pokemon"
|
8
|
+
require_relative "move"
|
9
|
+
require_relative "builder"
|
10
|
+
require_relative "exceptions"
|
11
|
+
|
12
|
+
Dir.glob(File.expand_path(File.join(File.dirname(__FILE__), "command", "*.rb"))) do |path|
|
13
|
+
require path
|
14
|
+
end
|
15
|
+
|
16
|
+
module Pktool
|
17
|
+
|
18
|
+
class Cli < Thor
|
19
|
+
register(Pktool::Command::Party, "party", "party [COMMAND]", "自分のパーティを編成する")
|
20
|
+
|
21
|
+
desc "info", "ポケモンの情報を見る"
|
22
|
+
def info
|
23
|
+
pokemon = Builder.pokemon
|
24
|
+
puts "<underline>種族値</underline>".termcolor
|
25
|
+
puts pokemon.base_stat.map{|k,v| "<bold>#{k}</bold>:<red>#{v}</red> ".termcolor}.join
|
26
|
+
puts "<underline>能力値</underline>".termcolor
|
27
|
+
puts pokemon.stats.map{|k,v| "<bold>#{k}</bold>:<blue>#{v}</blue> ".termcolor}.join
|
28
|
+
|
29
|
+
#TODO: 相性
|
30
|
+
end
|
31
|
+
|
32
|
+
desc "damage", "ダメージ計算する"
|
33
|
+
def damage
|
34
|
+
puts "<underline>攻撃側の指定</underline>".termcolor
|
35
|
+
attacker = Builder.pokemon
|
36
|
+
|
37
|
+
puts "<underline>防御側の指定</underline>".termcolor
|
38
|
+
defender = Builder.pokemon
|
39
|
+
|
40
|
+
puts "<underline>技の指定</underline>".termcolor
|
41
|
+
move = Builder.move(attacker, defender)
|
42
|
+
|
43
|
+
puts ""
|
44
|
+
puts "<underline>攻撃側</underline>".termcolor
|
45
|
+
puts attacker.name + " " + attacker.stats.map{|k,v| "<bold>#{k}</bold>:<blue>#{v}</blue> ".termcolor}.join
|
46
|
+
puts "<underline>防御側</underline>".termcolor
|
47
|
+
puts defender.name + " " + defender.stats.map{|k,v| "<bold>#{k}</bold>:<blue>#{v}</blue> ".termcolor}.join
|
48
|
+
puts
|
49
|
+
puts move.damage.map{|k,v| "<bold>#{k}</bold>:<blue>#{v}</blue> ".termcolor}.join
|
50
|
+
defeat = move.defeat
|
51
|
+
puts "<bold>確定数</bold>:<red>#{defeat[:num]}回</red> (#{'%.2f' % (defeat[:rate] * 100)}%) ".termcolor
|
52
|
+
|
53
|
+
end
|
54
|
+
|
55
|
+
desc "version", "バーションを確認する。"
|
56
|
+
def version
|
57
|
+
puts VERSION
|
58
|
+
end
|
59
|
+
|
60
|
+
end
|
61
|
+
|
62
|
+
end
|
@@ -0,0 +1,50 @@
|
|
1
|
+
require_relative "../party"
|
2
|
+
require_relative "../pokemon"
|
3
|
+
require 'termcolorlight'
|
4
|
+
|
5
|
+
module Pktool
|
6
|
+
module Command
|
7
|
+
class Party < Thor
|
8
|
+
desc "list", "一覧を表示する"
|
9
|
+
def list
|
10
|
+
Pktool::Party.new.list.each_with_index do |p,index|
|
11
|
+
puts "<bold>#{index+1} #{p.name}#{"(#{p.description})" unless p.description.empty?}</bold> #{p.nature} #{p.ability} #{p.item}".termcolor
|
12
|
+
puts "努力値:#{p.ev.map{|k,v| "#{k}#{v} "}.join} 個体値:#{p.iv.map{|k,v| "#{k}#{v} "}.join}".termcolor
|
13
|
+
puts ""
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
desc "add [NAME]", "ポケモンを追加する"
|
18
|
+
def add(name, description = "", nature = "", effort_value = "", individual_value = "", ability = "", item = "", level = "")
|
19
|
+
feature = {}
|
20
|
+
# feature = {
|
21
|
+
# description: description,
|
22
|
+
# nature: nature,
|
23
|
+
# effort_value: effort_value.to_sym,
|
24
|
+
# individual_value: individual_value,
|
25
|
+
# ability: ability,
|
26
|
+
# item: item,
|
27
|
+
# level: level
|
28
|
+
# }
|
29
|
+
party = Pktool::Party.new
|
30
|
+
pokemon = Pktool::Pokemon.fetch(name, feature)
|
31
|
+
party.add(pokemon)
|
32
|
+
party.save
|
33
|
+
end
|
34
|
+
|
35
|
+
desc "delete [ID]", "ポケモンを削除する"
|
36
|
+
def delete(id)
|
37
|
+
party = Pktool::Party.new
|
38
|
+
# todo: raise error
|
39
|
+
party.delete( - 1)
|
40
|
+
party.save
|
41
|
+
end
|
42
|
+
|
43
|
+
desc "update", "ポケモンを更新する"
|
44
|
+
def update
|
45
|
+
party = Pktool::party.new
|
46
|
+
end
|
47
|
+
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
data/lib/database.rb
ADDED
data/lib/exceptions.rb
ADDED
data/lib/log.rb
ADDED
data/lib/move.rb
ADDED
@@ -0,0 +1,51 @@
|
|
1
|
+
require_relative "database"
|
2
|
+
|
3
|
+
module Pktool
|
4
|
+
class Move < Sequel::Model(:move)
|
5
|
+
attr_accessor :attacker, :defender
|
6
|
+
|
7
|
+
def self.fetch(name, attacker, defender)
|
8
|
+
move = self.where(name: name).first
|
9
|
+
raise Error, "存在ない技です。" unless move
|
10
|
+
move.attacker = attacker
|
11
|
+
move.defender = defender
|
12
|
+
return move
|
13
|
+
end
|
14
|
+
|
15
|
+
def damage
|
16
|
+
level = 50.0
|
17
|
+
effect = 1.0
|
18
|
+
effect *= 1.5 if [@attacker.type1, @attacker.type2].include?(self.type)
|
19
|
+
|
20
|
+
type_effect = open("data/type.json") do |io|
|
21
|
+
JSON.load(io)
|
22
|
+
end
|
23
|
+
type = 1.0
|
24
|
+
type *= type_effect[@defender.type1][self.type]
|
25
|
+
type *= type_effect[@defender.type2][self.type] if @defender.type2
|
26
|
+
|
27
|
+
vital = 1.0
|
28
|
+
case move_type
|
29
|
+
when "ぶつり"
|
30
|
+
attack_stat = :A
|
31
|
+
defence_stat = :B
|
32
|
+
when "とくしゅ"
|
33
|
+
attack_stat = :C
|
34
|
+
defence_stat = :D
|
35
|
+
end
|
36
|
+
# this equation may be mistake.
|
37
|
+
base = ((power * @attacker.statistics(attack_stat) * (level * 2.0 / 5.0 + 2.0 )) / @defender.statistics(defence_stat) / 50.0 * effect + 2.0) * type
|
38
|
+
min = base * vital * 0.85
|
39
|
+
max = base * vital * 1.0
|
40
|
+
{min: min.floor, max: max.floor}
|
41
|
+
end
|
42
|
+
|
43
|
+
def defeat
|
44
|
+
hp = @defender.statistics(:H)
|
45
|
+
damage = self.damage
|
46
|
+
return {num: (hp.to_f / damage[:min]).ceil, rate: (damage[:min] / hp.to_f)}
|
47
|
+
end
|
48
|
+
|
49
|
+
end
|
50
|
+
|
51
|
+
end
|
data/lib/party.rb
ADDED
@@ -0,0 +1,42 @@
|
|
1
|
+
require 'json'
|
2
|
+
require_relative "pokemon"
|
3
|
+
|
4
|
+
module Pktool
|
5
|
+
|
6
|
+
class Party
|
7
|
+
attr_accessor :list
|
8
|
+
|
9
|
+
@@json_path = "data/user/party.json"
|
10
|
+
|
11
|
+
def initialize
|
12
|
+
json = open(@@json_path) do |io|
|
13
|
+
JSON.load(io, nil, { symbolize_names: true})
|
14
|
+
end
|
15
|
+
@list = json.map {|j| Pokemon.fetch(j[:name], j)}
|
16
|
+
end
|
17
|
+
|
18
|
+
def save
|
19
|
+
open(@@json_path, 'w') do |io|
|
20
|
+
JSON.dump(@list.map{|p| p.to_h}, io)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def add(pokemon)
|
25
|
+
@list.push(pokemon)
|
26
|
+
end
|
27
|
+
|
28
|
+
def [](id)
|
29
|
+
return @list[id]
|
30
|
+
end
|
31
|
+
|
32
|
+
def delete(id)
|
33
|
+
@list.delete_at(id)
|
34
|
+
end
|
35
|
+
|
36
|
+
def update(id, pokemon)
|
37
|
+
$list[id] = pokemon
|
38
|
+
end
|
39
|
+
|
40
|
+
end
|
41
|
+
|
42
|
+
end
|
data/lib/pktool.rb
ADDED
data/lib/pokemon.rb
ADDED
@@ -0,0 +1,99 @@
|
|
1
|
+
require 'json'
|
2
|
+
require_relative "database"
|
3
|
+
require_relative "exceptions"
|
4
|
+
|
5
|
+
module Pktool
|
6
|
+
|
7
|
+
class Pokemon < Sequel::Model(:pokemon)
|
8
|
+
|
9
|
+
class Nature < Sequel::Model(:nature)
|
10
|
+
def to_s
|
11
|
+
self.name.to_s
|
12
|
+
end
|
13
|
+
def to_sym
|
14
|
+
self.name.to_sym
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
attr_accessor :nature, :effort_value, :individual_value, :ability, :item
|
19
|
+
attr_accessor :description
|
20
|
+
alias :ev :effort_value
|
21
|
+
alias :iv :individual_value
|
22
|
+
|
23
|
+
@@ways = [:AS, :CS, :hAS, :hCS, :HB, :HD, :HAs, :HCs]
|
24
|
+
|
25
|
+
def self.fetch(name, feature = {})
|
26
|
+
pokemon = self.where(name: name).first
|
27
|
+
raise Error, "存在ないポケモンです。" unless pokemon
|
28
|
+
pokemon.set(feature)
|
29
|
+
return pokemon
|
30
|
+
end
|
31
|
+
|
32
|
+
def self.ways
|
33
|
+
return @@ways
|
34
|
+
end
|
35
|
+
|
36
|
+
def base_stat
|
37
|
+
{ H: self.H, A: self.A, B: self.B, C: self.C, D: self.D, S: self.S, 重さ: self.weight}
|
38
|
+
end
|
39
|
+
|
40
|
+
def set(feature)
|
41
|
+
@description = feature[:description] || ""
|
42
|
+
@nature = Nature[feature[:nature].to_s] || Nature["がんばりや"]
|
43
|
+
@effort_value = feature[:effort_value] || { H: 0, A: 0, B: 0, C: 0, D: 0, S: 0 }
|
44
|
+
@individual_value = feature[:individual_value] || { H: 31, A: 31, B: 31, C: 31, D: 31, S: 31 }
|
45
|
+
@ability = feature[:ability] || 1
|
46
|
+
@item = feature[:item] || ""
|
47
|
+
@level = feature[:level] || 50
|
48
|
+
|
49
|
+
if effort_value.instance_of?(Symbol) && @@ways.include?(effort_value)
|
50
|
+
case effort_value
|
51
|
+
when :AS
|
52
|
+
@effort_value = { H: 0, A: 252, B: 0, C: 0, D: 0, S: 252 }
|
53
|
+
when :CS
|
54
|
+
@effort_value = { H: 0, A: 0, B: 0, C: 252, D: 0, S: 252 }
|
55
|
+
when :hAS
|
56
|
+
@effort_value = { H: 6, A: 252, B: 0, C: 0, D: 0, S: 252 }
|
57
|
+
when :hCS
|
58
|
+
@effort_value = { H: 6, A: 0, B: 0, C: 252, D: 0, S: 252 }
|
59
|
+
when :HB
|
60
|
+
@effort_value = { H: 252, A: 0, B: 252, C: 0, D: 0, S: 0 }
|
61
|
+
when :HD
|
62
|
+
@effort_value = { H: 252, A: 0, B: 0, C: 0, D: 252, S: 0 }
|
63
|
+
when :HAs
|
64
|
+
@effort_value = { H: 252, A: 252, B: 0, C: 0, D: 0, S: 6 }
|
65
|
+
when :HCs
|
66
|
+
@effort_value = { H: 252, A: 0, B: 0, C: 252, D: 0, S: 6 }
|
67
|
+
else
|
68
|
+
@effort_value = { H: 0, A: 0, B: 0, C: 0, D: 0, S: 0 }
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
def statistics(name)
|
74
|
+
case name
|
75
|
+
when :H
|
76
|
+
statistics = ((self.H * 2 + @individual_value[:H] + @effort_value[:H] / 4 ) * @level / 100 ) + 10 + @level
|
77
|
+
else
|
78
|
+
statistics = (((self.send(name) * 2 + @individual_value[name] + @effort_value[name] / 4 ) * @level / 100 ) + 5) * @nature.send(name)
|
79
|
+
end
|
80
|
+
statistics.floor
|
81
|
+
end
|
82
|
+
|
83
|
+
def stats
|
84
|
+
[:H, :A, :B, :C, :D, :S].map { |name| [name, statistics(name)]}.to_h
|
85
|
+
end
|
86
|
+
|
87
|
+
def to_h
|
88
|
+
{
|
89
|
+
name: name,
|
90
|
+
description: @description,
|
91
|
+
nature: @nature.to_sym,
|
92
|
+
effort_value: @effort_value,
|
93
|
+
individual_value: @individual_value,
|
94
|
+
ability: @ability,
|
95
|
+
item: @item
|
96
|
+
}
|
97
|
+
end
|
98
|
+
end
|
99
|
+
end
|
data/lib/version.rb
ADDED
data/pktool.gemspec
ADDED
@@ -0,0 +1,28 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "pktool"
|
8
|
+
spec.version = Pktool::VERSION
|
9
|
+
spec.authors = ["uzimith"]
|
10
|
+
spec.email = ["uzimith.x9@gmail.com"]
|
11
|
+
spec.description = %q{pokemon battole support tool}
|
12
|
+
spec.summary = %q{}
|
13
|
+
spec.homepage = ""
|
14
|
+
spec.license = "MIT"
|
15
|
+
|
16
|
+
spec.files = `git ls-files -z`.split("\x0")
|
17
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
+
spec.require_paths = ["lib"]
|
20
|
+
|
21
|
+
spec.add_development_dependency "bundler", "~> 1.3"
|
22
|
+
spec.add_development_dependency "rake"
|
23
|
+
spec.add_development_dependency "sequel"
|
24
|
+
spec.add_development_dependency "sqlite3"
|
25
|
+
spec.add_development_dependency "termcolorlight"
|
26
|
+
spec.add_development_dependency "thor"
|
27
|
+
spec.add_development_dependency "romaji"
|
28
|
+
end
|
data/pktool.rb
ADDED
data/spec/move_spec.rb
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
require_relative '../lib/move.rb'
|
2
|
+
require_relative '../lib/pokemon.rb'
|
3
|
+
|
4
|
+
include Pktool
|
5
|
+
|
6
|
+
describe "Move" do
|
7
|
+
|
8
|
+
it "should calculate the damage without any aditional condition in case #1" do
|
9
|
+
attacker = Pokemon.fetch("ガブリアス", {nature: :いじっぱり, effort_value: :hAS})
|
10
|
+
defender = Pokemon.fetch("カビゴン", {nature: :ずぶとい, effort_value: :HB})
|
11
|
+
m = Move.fetch("げきりん", attacker, defender)
|
12
|
+
expect(m.damage).to eq({min: 106, max: 125})
|
13
|
+
end
|
14
|
+
|
15
|
+
it "should calculate the damage without any aditional condition in case #2" do
|
16
|
+
attacker = Pokemon.fetch("ガブリアス", {nature: :いじっぱり, effort_value: :hAS})
|
17
|
+
defender = Pokemon.fetch("クレセリア", {nature: :ずぶとい, effort_value: :HB})
|
18
|
+
m = Move.fetch("げきりん", attacker, defender)
|
19
|
+
expect(m.damage).to eq({min: 72, max: 85})
|
20
|
+
end
|
21
|
+
|
22
|
+
it "should calculate the damage with type effect" do
|
23
|
+
attacker = Pokemon.fetch("ボーマンダ", {nature: :いじっぱり, effort_value: :hAS})
|
24
|
+
defender = Pokemon.fetch("ナットレイ", {nature: :ずぶとい, effort_value: :HB})
|
25
|
+
m = Move.fetch("だいもんじ", attacker, defender)
|
26
|
+
# expect(m.damage(attacker, defender)).to eq({min: 144, max: 172})
|
27
|
+
expect(m.damage).to eq({min: 148, max: 174})
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
require_relative '../lib/pokemon.rb'
|
2
|
+
|
3
|
+
include Pktool
|
4
|
+
|
5
|
+
describe "Nature" do
|
6
|
+
it "should fecth nature effect" do
|
7
|
+
n = Pokemon::Nature[:まじめ.to_s]
|
8
|
+
expect(n.A).to eq 1.0
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
describe "Pokemon" do
|
13
|
+
it "should calculate status without nature effect" do
|
14
|
+
p = Pokemon.fetch("ガブリアス", {nature: :がんばりや, effort_value: :hAS})
|
15
|
+
expect(p.stats).to eq({:H=>184, :A=>182, :B=>115, :C=>100, :D=>105, :S=>154})
|
16
|
+
end
|
17
|
+
|
18
|
+
it "should calculate status with nature effect" do
|
19
|
+
p = Pokemon.fetch("ガブリアス", {nature: :いじっぱり, effort_value: :hAS})
|
20
|
+
expect(p.stats).to eq({:H=>184, :A=>200, :B=>115, :C=>90, :D=>105, :S=>154})
|
21
|
+
end
|
22
|
+
|
23
|
+
it "should be converted to hash" do
|
24
|
+
p = Pokemon.fetch("ガブリアス", {nature: :いじっぱり, effort_value: :hAS})
|
25
|
+
expect(p.to_h).to eq(
|
26
|
+
{
|
27
|
+
name: "ガブリアス",
|
28
|
+
description: "",
|
29
|
+
nature: :いじっぱり,
|
30
|
+
effort_value:{ H: 6, A: 252, B: 0, C: 0, D: 0, S: 252 } ,
|
31
|
+
individual_value:{ H: 31, A: 31, B: 31, C: 31, D: 31, S: 31 },
|
32
|
+
ability: 1,
|
33
|
+
item: ""
|
34
|
+
}
|
35
|
+
)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
require 'rspec'
|
2
|
+
require 'pry-byebug'
|
3
|
+
|
4
|
+
Dir["./support/**/*.rb"].each do |f|
|
5
|
+
require f
|
6
|
+
end
|
7
|
+
|
8
|
+
#RSpec.configure do |config|
|
9
|
+
#end
|
10
|
+
|
11
|
+
class String
|
12
|
+
def inspect
|
13
|
+
self.to_s
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
Encoding.default_external = Encoding::UTF_8
|
metadata
ADDED
@@ -0,0 +1,174 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: pktool
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- uzimith
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2014-12-09 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.3'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.3'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: sequel
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: sqlite3
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: termcolorlight
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: thor
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: romaji
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ">="
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
description: pokemon battole support tool
|
112
|
+
email:
|
113
|
+
- uzimith.x9@gmail.com
|
114
|
+
executables:
|
115
|
+
- pktool
|
116
|
+
extensions: []
|
117
|
+
extra_rdoc_files: []
|
118
|
+
files:
|
119
|
+
- ".gitignore"
|
120
|
+
- Gemfile
|
121
|
+
- Gemfile.lock
|
122
|
+
- Guardfile
|
123
|
+
- LICENSE.txt
|
124
|
+
- README.md
|
125
|
+
- Rakefile
|
126
|
+
- bin/pktool
|
127
|
+
- data/nature.json
|
128
|
+
- data/pokemonData.sqlite
|
129
|
+
- data/type.json
|
130
|
+
- data/user/party.json
|
131
|
+
- lib/builder.rb
|
132
|
+
- lib/cli.rb
|
133
|
+
- lib/command/party.rb
|
134
|
+
- lib/database.rb
|
135
|
+
- lib/exceptions.rb
|
136
|
+
- lib/log.rb
|
137
|
+
- lib/move.rb
|
138
|
+
- lib/party.rb
|
139
|
+
- lib/pktool.rb
|
140
|
+
- lib/pokemon.rb
|
141
|
+
- lib/version.rb
|
142
|
+
- pktool.gemspec
|
143
|
+
- pktool.rb
|
144
|
+
- spec/move_spec.rb
|
145
|
+
- spec/pokemon_spec.rb
|
146
|
+
- spec/spec_helper.rb
|
147
|
+
homepage: ''
|
148
|
+
licenses:
|
149
|
+
- MIT
|
150
|
+
metadata: {}
|
151
|
+
post_install_message:
|
152
|
+
rdoc_options: []
|
153
|
+
require_paths:
|
154
|
+
- lib
|
155
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - ">="
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '0'
|
160
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
161
|
+
requirements:
|
162
|
+
- - ">="
|
163
|
+
- !ruby/object:Gem::Version
|
164
|
+
version: '0'
|
165
|
+
requirements: []
|
166
|
+
rubyforge_project:
|
167
|
+
rubygems_version: 2.2.2
|
168
|
+
signing_key:
|
169
|
+
specification_version: 4
|
170
|
+
summary: ''
|
171
|
+
test_files:
|
172
|
+
- spec/move_spec.rb
|
173
|
+
- spec/pokemon_spec.rb
|
174
|
+
- spec/spec_helper.rb
|