mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-07 13:15:01 +00:00
Remove unnecessary utilities (#99)
- Comparable.clamp is already defined - Boolean class does not exist - String#start_with? already exists - String#end_with? already exists - String#bytesize already exists - String#capitalize already exists - Integer#digits already exists - Array#first and Array#last already exist - Array#shuffle already exists Ruby's own Integer#digits returns an array with the least significant digit as the first array element. That means that the method's only usage has to be appended with a call to Array#reverse.
This commit is contained in:
@@ -7,44 +7,10 @@ class Class
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
#===============================================================================
|
|
||||||
# module Comparable
|
|
||||||
#===============================================================================
|
|
||||||
unless Comparable.method_defined? :clamp
|
|
||||||
module Comparable
|
|
||||||
def clamp(min, max)
|
|
||||||
if max - min < 0
|
|
||||||
raise ArgumentError("min argument must be smaller than max argument")
|
|
||||||
end
|
|
||||||
return (self > max) ? max : (self < min) ? min : self
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
#===============================================================================
|
|
||||||
# class Boolean
|
|
||||||
#===============================================================================
|
|
||||||
class Boolean
|
|
||||||
def to_i
|
|
||||||
return self ? 1 : 0
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
#===============================================================================
|
#===============================================================================
|
||||||
# class String
|
# class String
|
||||||
#===============================================================================
|
#===============================================================================
|
||||||
class String
|
class String
|
||||||
def starts_with?(str)
|
|
||||||
proc = (self[0...str.length] == str) if self.length >= str.length
|
|
||||||
return proc || false
|
|
||||||
end
|
|
||||||
|
|
||||||
def ends_with?(str)
|
|
||||||
e = self.length - 1
|
|
||||||
proc = (self[(e-str.length)...e] == str) if self.length >= str.length
|
|
||||||
return proc || false
|
|
||||||
end
|
|
||||||
|
|
||||||
def starts_with_vowel?
|
def starts_with_vowel?
|
||||||
return ['a', 'e', 'i', 'o', 'u'].include?(self[0, 1].downcase)
|
return ['a', 'e', 'i', 'o', 'u'].include?(self[0, 1].downcase)
|
||||||
end
|
end
|
||||||
@@ -57,24 +23,6 @@ class String
|
|||||||
return self[-n..-1] || self
|
return self[-n..-1] || self
|
||||||
end
|
end
|
||||||
|
|
||||||
def bytesize
|
|
||||||
return self.size
|
|
||||||
end
|
|
||||||
|
|
||||||
def capitalize
|
|
||||||
proc = self.scan(/./)
|
|
||||||
proc[0] = proc[0].upcase
|
|
||||||
string = ""
|
|
||||||
for letter in proc
|
|
||||||
string += letter
|
|
||||||
end
|
|
||||||
return string
|
|
||||||
end
|
|
||||||
|
|
||||||
def capitalize!
|
|
||||||
self.replace(self.capitalize)
|
|
||||||
end
|
|
||||||
|
|
||||||
def blank?
|
def blank?
|
||||||
blank = true
|
blank = true
|
||||||
s = self.scan(/./)
|
s = self.scan(/./)
|
||||||
@@ -114,44 +62,13 @@ class Numeric
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
#===============================================================================
|
|
||||||
# class Integer
|
|
||||||
#===============================================================================
|
|
||||||
class Integer
|
|
||||||
# Returns an array containing each digit of the number in turn.
|
|
||||||
def digits(base = 10)
|
|
||||||
quotient, remainder = divmod(base)
|
|
||||||
return (quotient == 0) ? [remainder] : quotient.digits(base).push(remainder)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
#===============================================================================
|
#===============================================================================
|
||||||
# class Array
|
# class Array
|
||||||
#===============================================================================
|
#===============================================================================
|
||||||
class Array
|
class Array
|
||||||
def first
|
|
||||||
return self[0]
|
|
||||||
end
|
|
||||||
|
|
||||||
def last
|
|
||||||
return self[self.length-1]
|
|
||||||
end
|
|
||||||
|
|
||||||
def ^(other) # xor of two arrays
|
def ^(other) # xor of two arrays
|
||||||
return (self|other) - (self&other)
|
return (self|other) - (self&other)
|
||||||
end
|
end
|
||||||
|
|
||||||
def shuffle
|
|
||||||
dup.shuffle!
|
|
||||||
end unless method_defined? :shuffle
|
|
||||||
|
|
||||||
def shuffle!
|
|
||||||
(size - 1).times do |i|
|
|
||||||
r = i + rand(size - i)
|
|
||||||
self[i], self[r] = self[r], self[i]
|
|
||||||
end
|
|
||||||
self
|
|
||||||
end unless method_defined? :shuffle!
|
|
||||||
end
|
end
|
||||||
|
|
||||||
#===============================================================================
|
#===============================================================================
|
||||||
|
|||||||
@@ -191,7 +191,8 @@ class PokemonDataBox < SpriteWrapper
|
|||||||
end
|
end
|
||||||
|
|
||||||
def pbDrawNumber(number,btmp,startX,startY,align=0)
|
def pbDrawNumber(number,btmp,startX,startY,align=0)
|
||||||
n = (number==-1) ? [10] : number.to_i.digits # -1 means draw the / character
|
# -1 means draw the / character
|
||||||
|
n = (number == -1) ? [10] : number.to_i.digits.reverse
|
||||||
charWidth = @numbersBitmap.width/11
|
charWidth = @numbersBitmap.width/11
|
||||||
charHeight = @numbersBitmap.height
|
charHeight = @numbersBitmap.height
|
||||||
startX -= charWidth*n.length if align==1
|
startX -= charWidth*n.length if align==1
|
||||||
|
|||||||
Reference in New Issue
Block a user