Class: Case

Inherits:
Object
  • Object
show all
Includes:
Comparable
Defined in:
lib/Hashiparmentier/Core/Case.rb

Overview

Auteur

Brabant Mano

Version

0.1

Date

09/04/2020

Cette classe représente les cases de notre grille

Direct Known Subclasses

Ile, Pont

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(posX, posY, grille) ⇒ Case

:nodoc:



35
36
37
38
39
# File 'lib/Hashiparmentier/Core/Case.rb', line 35

def initialize(posX, posY, grille)
    @posX = posX
    @posY = posY
    @grille = grille
end

Instance Attribute Details

#grilleObject (readonly)

Returns the value of attribute grille.



18
19
20
# File 'lib/Hashiparmentier/Core/Case.rb', line 18

def grille
  @grille
end

#posXObject (readonly)

Returns the value of attribute posX.



12
13
14
# File 'lib/Hashiparmentier/Core/Case.rb', line 12

def posX
  @posX
end

#posYObject (readonly)

Returns the value of attribute posY.



15
16
17
# File 'lib/Hashiparmentier/Core/Case.rb', line 15

def posY
  @posY
end

Class Method Details

.creer(posX, posY, grille) ⇒ Object

Ce constructeur permet de creer une nouvelle case

param
  • posX La position en abscisse de la case

  • posY La position en ordonnée de la case

  • grille La grille dans laquelle se trouve la case



30
31
32
# File 'lib/Hashiparmentier/Core/Case.rb', line 30

def Case.creer(posX, posY, grille)
    new(posX, posY, grille)
end

Instance Method Details

#<=>(autre) ⇒ Object

Cette méthode permet de comparer deux cases

param
  • autre L’autre case

return
  • 0 Si l’autre case n’est ni une ile ni un pont

  • 1 Sinon



55
56
57
58
59
60
# File 'lib/Hashiparmentier/Core/Case.rb', line 55

def <=>(autre)
  if(autre.estIle?() || autre.estPont?())
    return 1
  end
  return 0
end

#clickOnObject

Cette méthode permet de simuler un “clic” sur la case



44
45
46
# File 'lib/Hashiparmentier/Core/Case.rb', line 44

def clickOn()

end

#estIle?Boolean

Cette méthode permet de savoir si la case est une ile

return
  • true Si la case est une ile

  • false Sinon

Returns:

  • (Boolean)


73
74
75
# File 'lib/Hashiparmentier/Core/Case.rb', line 73

def estIle?()
  return false
end

#estPont?Boolean

Cette méthode permet de savoir si la case est un pont

return
  • true Si la case est un pont

  • false Sinon

Returns:

  • (Boolean)


82
83
84
# File 'lib/Hashiparmentier/Core/Case.rb', line 82

def estPont?()
  return false
end

#razObject

Cette méthode permet de remettre à zéro la case



88
89
90
# File 'lib/Hashiparmentier/Core/Case.rb', line 88

def raz()

end

#to_sObject

Cette méthode permet d’afficher la case



64
65
66
# File 'lib/Hashiparmentier/Core/Case.rb', line 64

def to_s
  " "
end