minecraft_utils 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/bin/coords +41 -0
- data/bin/stacks +56 -0
- metadata +46 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: ade4161dc2a89c78868302a98e54664ec94ed1a61d7f7cad45f716344ffe08cb
|
4
|
+
data.tar.gz: e4bfc6cbc5ded8615131b0a230ebe8d72c43fe4d8a911405fca9a5dc8797b3d1
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 462b31765ee8a35e729ab3ad04a5ee5abaf6125aa0ebaaaecbc8b12ce132da9d78db6157e3ce575f915643159adfe3e8b2a634ac9440800344e2dddf774ba179
|
7
|
+
data.tar.gz: 9402dad2988380246b5f9cd9f8545785361a587347e89defdd43a13f2a8ce541f82ffc56961c69649396fe3aca40159c0ecfd6335f4682c7445dec93bca21ffa
|
data/bin/coords
ADDED
@@ -0,0 +1,41 @@
|
|
1
|
+
#!/usr/bin/ruby
|
2
|
+
|
3
|
+
require "optparse"
|
4
|
+
|
5
|
+
ARGV.push "-h" if ARGV.empty?
|
6
|
+
|
7
|
+
options = {}
|
8
|
+
location = "Nether"
|
9
|
+
OptionParser.new do |opts|
|
10
|
+
opts.banner = "Usage: coords [options] X Z"
|
11
|
+
|
12
|
+
opts.on("-o", "--overworld",
|
13
|
+
"calculates nether -> overworld coordinates") do |o|
|
14
|
+
options[:overworld] = o
|
15
|
+
location = "Overworld"
|
16
|
+
end
|
17
|
+
end.parse!
|
18
|
+
|
19
|
+
# Try and find 2 valid numbers in the args.
|
20
|
+
# They could run `coords 550 fuck you 700` for all I care.
|
21
|
+
case (coords = ARGV.grep(/^\d+$/).map &:to_i).size
|
22
|
+
when 3
|
23
|
+
# If they give XYZ, strip the Y
|
24
|
+
coords -= [coords[1]]
|
25
|
+
when 2
|
26
|
+
# Perfect
|
27
|
+
else
|
28
|
+
puts "No proper coordinate input found."
|
29
|
+
exit 1
|
30
|
+
end
|
31
|
+
|
32
|
+
# Transform the coordinates
|
33
|
+
x, z = coords.map do |c|
|
34
|
+
if options[:overworld]
|
35
|
+
c * 8
|
36
|
+
else
|
37
|
+
(c / 8.0).round
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
puts "#{location} Coordinates: #{x}, #{z}"
|
data/bin/stacks
ADDED
@@ -0,0 +1,56 @@
|
|
1
|
+
#!/usr/bin/ruby
|
2
|
+
|
3
|
+
require "optparse"
|
4
|
+
|
5
|
+
ARGV.push "-h" if ARGV.empty?
|
6
|
+
|
7
|
+
options = {}
|
8
|
+
OptionParser.new do |opts|
|
9
|
+
opts.banner = "Usage: stacks [options] AMOUNT [STACK SIZE=64]"
|
10
|
+
|
11
|
+
opts.on("-s", "--shulkers", "prints amount of shulker boxes to fill") do |o|
|
12
|
+
options[:shulkers] = o
|
13
|
+
end
|
14
|
+
|
15
|
+
opts.on("-d", "--dye",
|
16
|
+
"prints amount of dye needed for stained glass or concrete") do |o|
|
17
|
+
options[:dye] = o
|
18
|
+
end
|
19
|
+
end.parse!
|
20
|
+
|
21
|
+
unless ARGV[0].match? /^\d+$/
|
22
|
+
puts "Amount must be a number!"
|
23
|
+
exit 1
|
24
|
+
end
|
25
|
+
|
26
|
+
unless ARGV[1].nil? or ARGV[1].match? /^\d+$/
|
27
|
+
puts "Stack size must be a number!"
|
28
|
+
exit 1
|
29
|
+
end
|
30
|
+
|
31
|
+
def calc_stacks(n, stack_size=64)
|
32
|
+
stacks = (n / stack_size).floor
|
33
|
+
return [stacks, n - (stacks * stack_size)]
|
34
|
+
end
|
35
|
+
|
36
|
+
amount = ARGV[0].to_i
|
37
|
+
stacks, blocks = calc_stacks(amount, ARGV[1].nil? ? 64 : ARGV[1].to_i)
|
38
|
+
|
39
|
+
puts "#{stacks} stacks, #{blocks} blocks"
|
40
|
+
|
41
|
+
if options[:shulkers]
|
42
|
+
boxes = (stacks / 27).floor
|
43
|
+
puts "#{boxes} shulkers, #{stacks-(boxes * 27)} stacks, #{blocks} blocks"
|
44
|
+
end
|
45
|
+
|
46
|
+
if options[:dye]
|
47
|
+
dye = (amount / 8.0).ceil
|
48
|
+
print "Dye needed: #{dye}"
|
49
|
+
|
50
|
+
if dye > 64
|
51
|
+
stacks, blocks = calc_stacks dye
|
52
|
+
print " (#{stacks} stacks, #{blocks} blocks)"
|
53
|
+
end
|
54
|
+
|
55
|
+
puts
|
56
|
+
end
|
metadata
ADDED
@@ -0,0 +1,46 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: minecraft_utils
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Vinny Diehl
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2020-05-26 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description: Tools for calculating stacks of items and Nether coordinates.
|
14
|
+
email: vinny.diehl@gmail.com
|
15
|
+
executables:
|
16
|
+
- stacks
|
17
|
+
- coords
|
18
|
+
extensions: []
|
19
|
+
extra_rdoc_files: []
|
20
|
+
files:
|
21
|
+
- bin/coords
|
22
|
+
- bin/stacks
|
23
|
+
homepage: https://github.com/vinnydiehl/minecraft_utils
|
24
|
+
licenses:
|
25
|
+
- MIT
|
26
|
+
metadata: {}
|
27
|
+
post_install_message:
|
28
|
+
rdoc_options: []
|
29
|
+
require_paths:
|
30
|
+
- lib
|
31
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
32
|
+
requirements:
|
33
|
+
- - "~>"
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: '2.0'
|
36
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
requirements: []
|
42
|
+
rubygems_version: 3.1.3
|
43
|
+
signing_key:
|
44
|
+
specification_version: 4
|
45
|
+
summary: A simple set of calculator tools for Minecraft.
|
46
|
+
test_files: []
|