рдЦрд░реЛрдВрдЪ рд╕реЗ рдПрдХрддрд╛ рдореЗрдВ roguelike рдмрдирд╛рдирд╛

рдЫрд╡рд┐

рдпреВрдирд┐рдЯреА рдореЗрдВ рд░реЛрдЬрдЧрд▓рд╛рдЗрдХ рдмрдирд╛рдиреЗ рдкрд░ рдХрдИ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдирд╣реАрдВ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕реЗ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рд╢реЗрдЦреА рдмрдШрд╛рд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдЬреНрдЮрд╛рди рдмрд╛рдВрдЯрдиреЗ рдХреЗ рд▓рд┐рдП, рдЬреЛ рдЙрд╕ рдЕрд╡рд╕реНрдерд╛ рдореЗрдВ рд╣реИрдВ, рдЬрд┐рд╕ рдкрд░ рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд╛рдлреА рд╕рдордп рд╕реЗ рдерд╛ред

рдиреЛрдЯ: рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдПрдХрддрд╛ рдореЗрдВ рдПрдХ рд░реЙрдЧреБрд▓рд╛рдЗрдХ рдмрдирд╛рдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ рд╣реИред рд╡рд╣ рд╕рд┐рд░реНрдл рдПрдХ рд╣реИ ред рд╢рд╛рдпрдж рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдФрд░ рд╕рдмрд╕реЗ рдкреНрд░рднрд╛рд╡реА рдирд╣реАрдВ, рдореИрдВрдиреЗ рдкрд░реАрдХреНрд╖рдг рдФрд░ рддреНрд░реБрдЯрд┐ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реАрдЦрд╛ред рдФрд░ рдореИрдВ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдмрдирд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХреБрдЫ рдЪреАрдЬреЗрдВ рд╕реАрдЦреВрдВрдЧрд╛ред

рдорд╛рди рд▓реЗрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдХрдо рд╕реЗ рдХрдо рдПрдХрддрд╛ рдХреА рдореВрд▓ рдмрд╛рддреЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдкреНрд░реАрдлрд╝реИрдм рдпрд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдХреИрд╕реЗ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдПред рдореБрдЭреЗ рдпрд╣ рд╕рд┐рдЦрд╛рдиреЗ рдХреА рдЙрдореНрдореАрдж рди рдХрд░реЗрдВ рдХрд┐ рдЖрдк рд╕реНрдкреНрд░рд╛рдЗрдЯ рд╢реАрдЯ рдХреИрд╕реЗ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХрдИ рдорд╣рд╛рди рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рд╣реИрдВред рдореИрдВ рдЗрдВрдЬрди рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдкрд░ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдЙрд╕ рдЦреЗрд▓ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░реВрдВрдЧрд╛, рдЬрд┐рд╕реЗ рд╣рдо рдПрдХ рд╕рд╛рде рдмрдирд╛рдПрдВрдЧреЗред рдпрджрд┐ рдЖрдк рдХрдард┐рдирд╛рдЗрдпреЛрдВ рдореЗрдВ рднрд╛рдЧрддреЗ рд╣реИрдВ, рддреЛ рдбрд┐рд╕реНрдХреЛрд░реНрдб рдХреЗ рднрдпрд╛рдирдХ рд╕рдореБрджрд╛рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдорджрдж рдХреЗ рд▓рд┐рдП рдХрд╣реЗрдВ:

рдпреВрдирд┐рдЯреА рдбреЗрд╡рд▓рдкрд░ рдХрдореНрдпреБрдирд┐рдЯреА

рд░реЛрдЬреБрд▓реЗрдЬреЗрд╕

рддреЛ, рдЪрд▓рд┐рдП рд╢реБрд░реВ рдХрд┐рдпрд╛ рд╣реИ!

рдЪрд░рдг реж - рдпреЛрдЬрдирд╛


рд╣рд╛рдБ рдпрд╝рд╣ рд╕рд╣реА рд╣реИрдВред рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реА рдЪреАрдЬ рдПрдХ рдпреЛрдЬрдирд╛ рд╣реИред рдЖрдкрдХреЗ рд▓рд┐рдП рдЦреЗрд▓ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рдФрд░ рдореЗрд░реЗ рд▓рд┐рдП - рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдирд╛ рддрд╛рдХрд┐ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рдмрд╛рдж рд╣рдо рд╡рд┐рд╖рдп рд╕реЗ рд╡рд┐рдЪрд▓рд┐рдд рди рд╣реЛрдВред рдЧреЗрдо рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рднреНрд░рдорд┐рдд рд╣реЛрдирд╛ рдЖрд╕рд╛рди рд╣реИ, рдареАрдХ рдЙрд╕реА рддрд░рд╣ рдЬреИрд╕реЗ рдХрд┐ рд░рдЧреНрдЧреБрд▓рд╛рдЗрдХ рдбрдВрдЧрдСрди рдореЗрдВред

рд╣рдо рд░реЙрдЧреБрд▓рд╛рдЗрдХ рд▓рд┐рдЦреЗрдВрдЧреЗред рд╣рдо рдореБрдЦреНрдп рд░реВрдк рд╕реЗ Cogmind рдбреЗрд╡рд▓рдкрд░ рдЬреЛрд╢ рдЬреАрдИ рдХреЗ рд╡рд╛рд░ рд╕рд▓рд╛рд╣ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВрдЧреЗ рдпрд╣рд╛рдБ ред рд▓рд┐рдВрдХ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВ, рдкреЛрд╕реНрдЯ рдкрдврд╝реЗрдВ рдпрд╛ рд╡реАрдбрд┐рдпреЛ рджреЗрдЦреЗрдВ, рдФрд░ рдлрд┐рд░ рд╡рд╛рдкрд╕ рдЖрдПрдВред

рдЗрд╕ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдХреНрдпрд╛ рд╣реИ? рдПрдХ рдареЛрд╕ рд╕рд░рд▓ рдореВрд▓ рд░реВрдЧреНрдпреВрд▓рд╛рдЗрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ, рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдЖрдк рдлрд┐рд░ рдкреНрд░рдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдореЗрдВ рдХрд╛рд▓рдХреЛрдард░реА рдкреАрдврд╝реА, рдирдХреНрд╢реЗ рдкрд░ рдШреВрдордиреЗ рд╡рд╛рд▓рд╛ рдЦрд┐рд▓рд╛рдбрд╝реА, рджреГрд╢реНрдпрддрд╛ рдХреЛрд╣рд░рд╛, рджреБрд╢реНрдорди рдФрд░ рд╡рд╕реНрддреБрдПрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдХреЗрд╡рд▓ рд╕рдмрд╕реЗ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рддреЛ, рдЦрд┐рд▓рд╛рдбрд╝реА рдХреЛ рдХрдИ рдордВрдЬрд┐рд▓реЛрдВ рддрдХ рд╕реАрдврд╝рд┐рдпреЛрдВ рд╕реЗ рдиреАрдЪреЗ рдЬрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдорд╛рди рд▓реАрдЬрд┐рдП, рдкрд╛рдБрдЪ рд╕реЗ, рдЕрдкрдиреЗ рд╕реНрддрд░ рдХреЛ рдмрдврд╝рд╛рдПрдБ, рд╕реБрдзрд╛рд░реЗрдВ, рдФрд░ рдЕрдВрдд рдореЗрдВ рдмреЙрд╕ рдХреЗ рд╕рд╛рде рд▓рдбрд╝рд╛рдИ рдХрд░реЗрдВ рдФрд░ рдЙрд╕реЗ рд╣рд░рд╛рдПрдБред рдпрд╛ рдорд░реЛред рд╡рд╣, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рдм рд╣реИред

рдЬреЛрд╢ рдЬреАрдИ рдХреА рд╕рд▓рд╛рд╣ рдХреЗ рдмрд╛рдж, рд╣рдо рдЦреЗрд▓ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВрдЧреЗ рддрд╛рдХрд┐ рд╡реЗ рд╣рдореЗрдВ рд▓рдХреНрд╖реНрдп рддрдХ рд▓реЗ рдЬрд╛рдПрдВред рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рд░реЙрдЧреБрд▓рд╛рдЗрдХ рдлреНрд░реЗрдорд╡рд░реНрдХ рдорд┐рд▓рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЪрд┐рдкреНрд╕ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рдкреИрджрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╛ рдЯреЛрдХрд░реА рдореЗрдВ рд╕рдм рдХреБрдЫ рдлреЗрдВрдХ рджреЗрдВ, рдкреНрд░рд╛рдкреНрдд рдЕрдиреБрднрд╡ рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдПрдВ рдФрд░ рдЦрд░реЛрдВрдЪ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВред рдпрд╣ рд╡реИрд╕реЗ рднреА рдХрдорд╛рд▓ рд╣реЛрдЧрд╛ред

рдореИрдВ рдЖрдкрдХреЛ рдХреЛрдИ рдЧреНрд░рд╛рдлрд┐рдХ рд╕рдВрд╕рд╛рдзрди рдирд╣реАрдВ рджреВрдВрдЧрд╛ред рдЙрдиреНрд╣реЗрдВ рд╕реНрд╡рдпрдВ рдбреНрд░рд╛ рдХрд░реЗрдВ рдпрд╛ рдореБрдлреНрдд рдЯрд╛рдЗрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдЬрд┐рд╕реЗ рдпрд╣рд╛рдВ , рдпрд╣рд╛рдВ рдпрд╛ Google рдореЗрдВ рдЦреЛрдЬрдХрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред рдмрд╕ рдЦреЗрд▓ рдореЗрдВ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдХреЗ рд▓реЗрдЦрдХреЛрдВ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдирд╛ рдордд рднреВрд▓рдирд╛ред

рдЖрдЗрдП рдЕрдм рдЙрди рд╕рднреА рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░реЗрдВ рдЬреЛ рдЙрдирдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдХреНрд░рдо рдореЗрдВ рд╣рдорд╛рд░реЗ рд░рдЧреНрдЧреБрд▓рд╛рдЗрдХ рдореЗрдВ рд╣реЛрдВрдЧреЗ:

  1. рдХрд╛рд▓рдХреЛрдард░реА рдирдХреНрд╢рд╛ рдкреАрдврд╝реА
  2. рдЦрд┐рд▓рд╛рдбрд╝реА рдЪрд░рд┐рддреНрд░ рдФрд░ рдЙрд╕рдХрд╛ рдЖрдВрджреЛрд▓рди
  3. рджреГрд╢реНрдпрддрд╛ рдХрд╛ рдХреНрд╖реЗрддреНрд░
  4. рджреБрд╢реНрдорди
  5. рд░рд╛рд╕реНрддрд╛ рдЦреЛрдЬреЛ
  6. рдлрд╛рдЗрдЯ, рд╣реЗрд▓реНрде рдФрд░ рдбреЗрде
  7. рдЦрд┐рд▓рд╛рдбрд╝реА рд╕реНрддрд░ рдКрдкрд░
  8. рдЖрдЗрдЯрдо (рд╣рдерд┐рдпрд╛рд░ рдФрд░ рдФрд╖рдзрд┐)
  9. рдХрдВрд╕реЛрд▓ рдзреЛрдЦрд╛ рджреЗрддреА рд╣реИ (рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП)
  10. рдХрд╛рд▓ рдХреЛрдард░реА
  11. рдмрдЪрдд рдФрд░ рд▓реЛрдбрд┐рдВрдЧ
  12. рд╕рд░реНрд╡реЛрдкрд░рд┐ рдмреЙрд╕

рдпрд╣ рд╕рдм рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдордЬрдмреВрдд рд░рдЧреЗрд▓реБрдЗрдХреЗ рд╣реЛрдЧрд╛, рдФрд░ рдЖрдк рдЕрдкрдиреЗ рдЦреЗрд▓ рд╡рд┐рдХрд╛рд╕ рдХреМрд╢рд▓ рдХреЛ рдмрд╣реБрдд рдмрдврд╝рд╛рд╡рд╛ рджреЗрдВрдЧреЗред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдореЗрд░реЗ рдХреМрд╢рд▓ рдХреЛ рд╕реБрдзрд╛рд░рдиреЗ рдХрд╛ рдореЗрд░рд╛ рддрд░реАрдХрд╛ рдерд╛ : рдХреЛрдб рдмрдирд╛рдирд╛ рдФрд░ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ред рдЗрд╕рд▓рд┐рдП, рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕реЗ рднреА рд╕рдВрднрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВред

рдЪрд░рдг 1 - MapManager рд╡рд░реНрдЧ


рдпрд╣ рдкрд╣рд▓реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдмрдирд╛рдПрдВрдЧреЗ рдФрд░ рдпрд╣ рд╣рдорд╛рд░реЗ рдЦреЗрд▓ рдХреА рд░реАрдврд╝ рдмрдиреЗрдЧреАред рдпрд╣ рд╕рд░рд▓ рд╣реИ, рд▓реЗрдХрд┐рди рдЦреЗрд▓ рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред

рддреЛ, MapManager рдирд╛рдордХ рдПрдХ .cs рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдПрдВ рдФрд░ рдЗрд╕реЗ рдЦреЛрд▓реЗрдВред

рд╣рдЯрд╛рдПрдВ ": MonoBehaviour" рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЗрд╕реЗ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдирд╣реАрдВ рдорд┐рд▓реЗрдЧрд╛ рдФрд░ рдХрд┐рд╕реА рднреА GameObject рд╕реЗ рд╕рдВрд▓рдЧреНрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдкреНрд░рд╛рд░рдВрдн () рдФрд░ рдЕрджреНрдпрддрди () рдлрд╝рдВрдХреНрд╢рди рдирд┐рдХрд╛рд▓реЗрдВред

MapManager рд╡рд░реНрдЧ рдХреЗ рдЕрдВрдд рдореЗрдВ, рдЯрд╛рдЗрд▓ рдирд╛рдордХ рдПрдХ рдирдпрд╛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╡рд░реНрдЧ рдмрдирд╛рдПрдВред


рдЯрд╛рдЗрд▓ рд╡рд░реНрдЧ рдореЗрдВ рдПрдХ рдПрдХрд▓ рдЯрд╛рдЗрд▓ рдХреА рд╕рднреА рдЬрд╛рдирдХрд╛рд░реА рд╣реЛрдЧреАред рдЕрдм рддрдХ, рд╣рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдХреЗрд╡рд▓ x рдФрд░ y рд╕реНрдерд╛рди, рд╕рд╛рде рд╣реА рд╕рд╛рде рдорд╛рдирдЪрд┐рддреНрд░ рдХреА рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╕реНрдерд┐рдд рдПрдХ рдЧреЗрдо рдСрдмреНрдЬреЗрдХреНрдЯред


рдЗрд╕рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдмреБрдирд┐рдпрд╛рджреА рдЯрд╛рдЗрд▓ рдХреА рдЬрд╛рдирдХрд╛рд░реА рд╣реИред рдЖрдЗрдП рдЗрд╕ рдЯрд╛рдЗрд▓ рд╕реЗ рдПрдХ рдорд╛рдирдЪрд┐рддреНрд░ рдмрдирд╛рдПрдВред рдпрд╣ рд╕рд░рд▓ рд╣реИ, рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдЯрд╛рдЗрд▓ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рджреЛ-рдЖрдпрд╛рдореА рд╕рд░рдгреА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рдЬрдЯрд┐рд▓ рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдЦрд╛рд╕ рдирд╣реАрдВ рд╣реИред рдмрд╕ MapManager рд╡рд░реНрдЧ рдореЗрдВ рдЯрд╛рдЗрд▓ [,] рд╡реЗрд░рд┐рдПрдмрд▓ рдЬреЛрдбрд╝реЗрдВ:


рджреЗрдЦрд╛! рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдирдХреНрд╢рд╛ рд╣реИ!

рд╣рд╛рдБ, рдпрд╣ рдЦрд╛рд▓реА рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдирдХреНрд╢рд╛ рд╣реИред рд╣рд░ рдмрд╛рд░ рдЬрдм рдХреЛрдИ рдЪреАрдЬрд╝ рдирдХреНрд╢реЗ рдкрд░ рдЪрд▓рддреА рдпрд╛ рдмрджрд▓рддреА рд╣реИ, рддреЛ рдЗрд╕ рдирдХреНрд╢реЗ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдЕрдкрдбреЗрдЯ рдХреА рдЬрд╛рдПрдЧреАред рдпрд╣реА рд╣реИ, рдЕрдЧрд░, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдЦрд┐рд▓рд╛рдбрд╝реА рдПрдХ рдирдИ рдЯрд╛рдЗрд▓ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдХрдХреНрд╖рд╛ рдорд╛рдирдЪрд┐рддреНрд░ рдкрд░ рдЧрдВрддрд╡реНрдп рдЯрд╛рдЗрд▓ рдкрддреЗ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдЧрд╛, рджреБрд╢реНрдорди рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдФрд░ рдЗрд╕рдХреА рдзреИрд░реНрдпрддрд╛ред рдЗрд╕рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рд╣рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдореЛрдбрд╝ рдкрд░ рд╣рдЬрд╛рд░реЛрдВ рдЯрдХрд░рд╛рд╡реЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреА рд╣реЛрдЧреА, рдФрд░ рд╣рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдЧреЗрдо рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдХреЛрд▓рд╛рдЗрдбрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЬреЛ рдЧреЗрдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХреЛ рд╕рд░рд▓ рдФрд░ рд╕рд░рд▓ рдмрдирд╛рдПрдЧрд╛ред

рдкрд░рд┐рдгрд╛рдореА рдХреЛрдб рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class MapManager 
{
    public static Tile[,] map; // the 2-dimensional map with the information for all the tiles
}

public class Tile { //Holds all the information for each tile on the map
    public int xPosition; // the position on the x axis
    public int yPosition; // the position on the y axis
    public GameObject baseObject; // the map game object attached to that position: a floor, a wall, etc.
}

рдкрд╣рд▓рд╛ рдЪрд░рдг рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдЪрд▓реЛ рдХрд╛рд░реНрдб рднрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВред рдЕрдм рд╣рдо рдПрдХ рдХрд╛рд▓рдХреЛрдард░реА рдЬрдирд░реЗрдЯрд░ рдмрдирд╛рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВрдЧреЗред

рд╕реНрдЯреЗрдЬ 2 - рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╢рдмреНрдж


рд▓реЗрдХрд┐рди рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдкрд╣рд▓реЗ рднрд╛рдЧ рдХреЗ рдкреНрд░рдХрд╛рд╢рди рдХреЗ рдмрд╛рдж рдкреНрд░рд╛рдкреНрдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж рдХреЗ рд╕рд╛рде рдЙрддреНрдкрдиреНрди рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рд╕реБрдЭрд╛рд╡реЛрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рддрд╛ рд╣реВрдВред рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдмрдирд╛рддреЗ рд╕рдордп, рдЖрдкрдХреЛ рд╢реБрд░реВ рд╕реЗ рд╣реА рдпрд╣ рд╕реЛрдЪрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ рдХрд┐ рдЖрдк рдЦреЗрд▓ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдХреИрд╕реЗ рдмрдирд╛рдП рд░рдЦреЗрдВрдЧреЗред рдЕрдиреНрдпрдерд╛, рдмрд╛рдж рдореЗрдВ рдпрд╣ рдФрд░ рдЕрдзрд┐рдХ рдЕрд░рд╛рдЬрдХ рд╣реЛрдЧрд╛ред рд╕реНрдЯрд╛рд░ рд╢реЗрдкреНрдб рдмреИрдЧреЗрд▓ (рдЖрдк рдпрд╣рд╛рдВ рдореБрдлреНрдд рдореЗрдВ рдЗрд╕ рдЧреЗрдо рдХреЛ рдЦреЗрд▓ рд╕рдХрддреЗ рд╣реИрдВ ) рдХреЗ рдбреЗрд╡рд▓рдкрд░, рдбрд┐рд╕реНрдХреЛрд░реНрдб st33d рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗ рдХрд╣рд╛ рдХрд┐ рдкрд╣рд▓реЗ рддреЛ рдЙрд╕рдиреЗ рдпрд╣ рд╕реЛрдЪрдХрд░ рдЧреЗрдо рдмрдирд╛рдпрд╛ рдХрд┐ рдпрд╣ рд░рд╛рдЬреНрдпреЛрдВ рдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВ рдмрдЪрд╛рдПрдЧрд╛ред рдзреАрд░реЗ-рдзреАрд░реЗ, рдЦреЗрд▓ рдмрдбрд╝рд╛ рд╣реЛрдиреЗ рд▓рдЧрд╛ рдФрд░ рдЙрдирдХреЗ рдкреНрд░рд╢рдВрд╕рдХ рдиреЗ рд╕рд╣реЗрдЬреЗ рдЧрдП рдирдХреНрд╢реЗ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдорд╛рдВрдЧрд╛ред рд▓реЗрдХрд┐рди рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдмрдирд╛рдиреЗ рдХреА рдЪреБрдиреА рд╣реБрдИ рд╡рд┐рдзрд┐ рдХреЗ рдХрд╛рд░рдг, рдбреЗрдЯрд╛ рдХреЛ рд╕рд╣реЗрдЬрдирд╛ рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рдерд╛, рдЗрд╕рд▓рд┐рдП рд╡рд╣ рдРрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рдерд╛ред


рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдкрдиреА рдЧрд▓рддрд┐рдпреЛрдВ рд╕реЗ рд╕реАрдЦрддреЗ рд╣реИрдВред рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рдореИрдВрдиреЗ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдХреЗ рдЕрдВрдд рдореЗрдВ рд╕реЗрд╡ / рд▓реЛрдб рднрд╛рдЧ рдХреЛ рд░рдЦрд╛ рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рд╢реБрд░реВ рд╕реЗ рд╣реА рдЙрдирдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реЛрдЪрддреЗ рд╣реИрдВ, рдФрд░ рдЕрднреА рддрдХ рдЙрдиреНрд╣реЗрдВ рд╕рдордЭрд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕ рднрд╛рдЧ рдореЗрдВ рдореИрдВ рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝реА рдмрд╛рдд рдХрд░реВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрдиреБрднрд╡рд╣реАрди рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЕрдзрд┐рднрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВред

рд╣рдо рдЯрд╛рдЗрд▓ рд╡рд░реНрдЧ рдХреЗ рдЪрд░ рдХреЗ рдПрдХ рд╕рд░рдгреА рдХреЗ рд░реВрдк рдореЗрдВ рдРрд╕реА рдЪреАрдЬреЛрдВ рдХреЛ рдмрдЪрд╛рдПрдВрдЧреЗ рдЬрд┐рд╕рдореЗрдВ рдирдХреНрд╢рд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИред рд╣рдо рдЗрд╕ рд╕рднреА рдбреЗрдЯрд╛ рдХреЛ рд╕рд╣реЗрдЬ рд▓реЗрдВрдЧреЗ, рдЧреЗрдордСрдмрдЬреЗрдХреНрдЯ рдХреНрд▓рд╛рд╕ рдХреЗ рдЪрд░ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рдЬреЛ рдЯрд╛рдЗрд▓ рд╡рд░реНрдЧ рдХреЗ рдЕрдВрджрд░ рд╣реИрдВред рдХреНрдпреЛрдВ? рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рдХрд┐ GameObjects рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдбреЗрдЯрд╛ рдореЗрдВ рдПрдХрддрд╛ рдХреЗ рд╕рд╛рде рдХреНрд░рдордмрджреНрдз рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╣рдореЗрдВ GameObjects рдХреЗ рдЕрдВрджрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдбреЗрдЯрд╛ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рд╕рднреА рдбреЗрдЯрд╛ рдХреЛ рдЯрд╛рдЗрд▓ рдЬреИрд╕реЗ рд╡рд░реНрдЧреЛрдВ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдмрд╛рдж рдореЗрдВ рдкреНрд▓реЗрдпрд░, рджреБрд╢реНрдорди, рдЖрджрд┐ред рддрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЧреЗрдордСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рд╣реЛрдВрдЧреЗ, рдЬреЛ рджреГрд╢реНрдпрддрд╛ рдФрд░ рдЧрддрд┐ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рд╕реНрдХреНрд░реАрди рдкрд░ рд╕реНрдкреНрд░рд╛рдЗрдЯреНрд╕ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдРрд╕реА рдЪреАрдЬреЛрдВ рдХреА рдЧрдгрдирд╛ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛрдВрдЧреЗред рдЗрд╕рд▓рд┐рдП, рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рднреАрддрд░ рдЧреЗрдордСрдмрдЬреЗрдХреНрдЯ рдЪрд░ рд╣реЛрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдЗрди рдЪрд░ рдХрд╛ рдореВрд▓реНрдп рд╕рд╣реЗрдЬрд╛ рдирд╣реАрдВ рдЬрд╛рдПрдЧрд╛ рдФрд░ рд▓реЛрдб рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд▓реЛрдб рдХрд░рддреЗ рд╕рдордп, рд╣рдо рд╕рд╣реЗрдЬреЗ рдЧрдП рдбреЗрдЯрд╛ (рд╕реНрдерд┐рддрд┐, рд╕реНрдкреНрд░рд╛рдЗрдЯ, рдЖрджрд┐) рд╕реЗ GameObject рдХреЛ рдлрд┐рд░ рд╕реЗ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░реЗрдВрдЧреЗред

рдлрд┐рд░ рд╣рдореЗрдВ рдЕрднреА рдХреНрдпрд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдЦреИрд░, рдореМрдЬреВрджрд╛ рдЯрд╛рдЗрд▓ рд╡рд░реНрдЧ рдореЗрдВ рджреЛ рд▓рд╛рдЗрдиреЗрдВ рдЬреЛрдбрд╝реЗрдВ рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдПрдХред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рд╣рдо "рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ;" рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╢реАрд░реНрд╖рдХ рдХреЗ рд▓рд┐рдП, рдФрд░ рдлрд┐рд░ рдкреВрд░реА рдХрдХреНрд╖рд╛ рдХреЗ рд╕рд╛рдордиреЗ [рд╕реАрд░рд┐рдпрд▓ рдпреЛрдЧреНрдп] рдФрд░ рдЧреЗрдордСрдмреНрдЬреЗрдХреНрдЯ рдЪрд░ рдХреЗ рдареАрдХ рд╕рд╛рдордиреЗ [NonSerialized]ред рдРрд╢реЗ рд╣реА:



рдЬрдм рд╣рдо рдмрдЪрдд / рд▓реЛрдбрд┐рдВрдЧ рдкрд░ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдореЗрдВ рдкрд╣реБрдБрдЪрддреЗ рд╣реИрдВ рддреЛ рдореИрдВ рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдмрддрд╛рддрд╛ рд╣реВрдБред рдЕрднреА рдХреЗ рд▓рд┐рдП, рдпрд╣ рд╕рдм рдЫреЛрдбрд╝ рджреЗрдВ рдФрд░ рдЖрдЧреЗ рдмрдврд╝реЗрдВред

рдЪрд░рдг 3 - рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рдФрд░


рдореБрдЭреЗ рдЙрд╕ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдкрд░ рдПрдХ рдФрд░ рд╕рдореАрдХреНрд╖рд╛ рдорд┐рд▓реА рдЬрд┐рд╕реЗ рдореИрдВ рдпрд╣рд╛рдВ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдПрдХ рдЧреЗрдо рдореЗрдВ рдбреЗрдЯрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВред рдкрд╣рд▓рд╛ рдЬреЛ рдореИрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдЬреЛ рдЗрд╕ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛: рд╕рднреА рдЯрд╛рдЗрд▓ рдбреЗрдЯрд╛ рдЯрд╛рдЗрд▓ рд╡рд░реНрдЧ рдореЗрдВ рд╣реИрдВ, рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рд╕рднреА рдПрдХ рд╕рд░рдгреА рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИрдВред рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдХрдИ рдлрд╛рдпрджреЗ рд╣реИрдВ: рдпрд╣ рдкрдврд╝рдирд╛ рдЖрд╕рд╛рди рд╣реИ, рдЖрдкрдХреЛ рдЬреЛ рдХреБрдЫ рднреА рдЪрд╛рд╣рд┐рдП рд╡рд╣ рдПрдХ рд╣реА рд╕реНрдерд╛рди рдкрд░ рд╣реИ, рдбреЗрдЯрд╛ рдХреЛ рд╕рд╣реЗрдЬрдирд╛ рдФрд░ рд╕рд╣реЗрдЬрдирд╛ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИред рд▓реЗрдХрд┐рди рд╕реНрдореГрддрд┐ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдпрд╣ рдЗрддрдирд╛ рдкреНрд░рднрд╛рд╡реА рдирд╣реАрдВ рд╣реИред рдЖрдкрдХреЛ рдЪрд░ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реА рдореЗрдореЛрд░реА рдЖрд╡рдВрдЯрд┐рдд рдХрд░рдиреА рд╣реЛрдЧреА рдЬреЛ рдЦреЗрд▓ рдореЗрдВ рдХрднреА рднреА рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХреА рдЬрд╛рдПрдЧреАред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдмрд╛рдж рдореЗрдВ рд╣рдо рдЯрд╛рдЗрд▓ рд╡рд░реНрдЧ рдореЗрдВ рд╢рддреНрд░реБ рдЧреЗрдордСрдмрдЬреЗрдХреНрдЯ рд╡реИрд░рд┐рдПрдмрд▓ рдбрд╛рд▓реЗрдВрдЧреЗ рддрд╛рдХрд┐ рд╣рдо рд▓рдбрд╝рд╛рдИ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╕рднреА рдЧрдгрдирд╛рдУрдВ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдЯрд╛рдЗрд▓ рдкрд░ рдЦрдбрд╝реЗ рджреБрд╢реНрдорди рдХреЗ рдЧреЗрдо рдСрдмрдЬреЗрдХреНрдЯ рдХреЗ рдорд╛рдирдЪрд┐рддреНрд░ рд╕реЗ рд╕реАрдзреЗ рдЗрдВрдЧрд┐рдд рдХрд░ рд╕рдХреЗрдВред рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рдЦреЗрд▓ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдЯрд╛рдЗрд▓ рдХреЛ рдЧреЗрдо рдСрдмрдЬреЗрдХреНрдЯ рдЪрд░ рдХреЗ рд▓рд┐рдП рдореЗрдореЛрд░реА рдореЗрдВ рдЬрдЧрд╣ рдЖрд╡рдВрдЯрд┐рдд рдХреА рдЬрд╛рдПрдЧреА,рднрд▓реЗ рд╣реА рдЗрд╕ рдЯрд╛рдЗрд▓ рдкрд░ рдХреЛрдИ рджреБрд╢реНрдорди рди рд╣реЛред рдпрджрд┐ 2500 рдЯрд╛рдЗрд▓реЛрдВ рдХреЗ рдирдХреНрд╢реЗ рдкрд░ 10 рджреБрд╢реНрдорди рд╣реИрдВ, рддреЛ 2490 рдЦрд╛рд▓реА рд╣реЛрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдЧреЗрдордСрдмрдЬреЗрдХреНрдЯ рдЪрд░ рдЖрд╡рдВрдЯрд┐рдд рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗ - рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХрд┐рддрдиреА рдореЗрдореЛрд░реА рдмрд░реНрдмрд╛рдж рд╣реЛ рдЧрдИ рд╣реИред

рдЯрд╛рдЗрд▓реНрд╕ рдХреЗ рдореВрд▓ рдбреЗрдЯрд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реНрдерд┐рддрд┐ рдФрд░ рдкреНрд░рдХрд╛рд░) рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд┐рдзрд┐ рд╣реЛрдЧреА, рдФрд░ рдЕрдиреНрдп рд╕рднреА рдбреЗрдЯрд╛ рдХреЛ рд╣реИрд╢рдо-рдПрд╕ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЬреЛ рдХреЗрд╡рд▓ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдиреЗ рдкрд░ рдЙрддреНрдкрдиреНрди рд╣реЛрдЧрд╛ред рдпрд╣ рдмрд╣реБрдд рд╕рд╛рд░реА рдореЗрдореЛрд░реА рдХреЛ рдмрдЪрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рдкреЗрдмреИрдХ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реЛрдЧрд╛ред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдЗрд╕ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рдЙрдиреНрдирдд рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ, рддреЛ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдореИрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдкреЛрд╕реНрдЯ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реВрдВред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдЖрдк рдЗрд╕ рд╡рд┐рд╖рдп рдХреА рдЪрд░реНрдЪрд╛ рдкрдврд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ Reddit рдкрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред

рдЪрд░рдг 4 - рдХрд╛рд▓рдХреЛрдард░реА рдкреАрдврд╝реА рдПрд▓реНрдЧреЛрд░рд┐рджрдо


рд╣рд╛рдВ, рдпрд╣ рдПрдХ рдЕрдиреНрдп рдЦрдВрдб рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдореИрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ рдФрд░ рд╣рдо рдХреБрдЫ рднреА рдХрд╛рд░реНрдпрдХреНрд░рдо рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рд▓реЗрдХрд┐рди рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреА рд╕рд╛рд╡рдзрд╛рдиреАрдкреВрд░реНрд╡рдХ рдпреЛрдЬрдирд╛ рд╣рдореЗрдВ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдмрд╣реБрдд рд╕рдордп рдмрдЪрд╛рдПрдЧреАред

рдХрд╛рд▓рдХреЛрдард░реА рдЬрдирд░реЗрдЯрд░ рдмрдирд╛рдиреЗ рдХреЗ рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВред рд╣рдо рдЬрд┐рд╕реЗ рдПрдХ рд╕рд╛рде рд▓рд╛рдЧреВ рдХрд░реЗрдВрдЧреЗ рд╡рд╣ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИ рдФрд░ рд╕рдмрд╕реЗ рдкреНрд░рднрд╛рд╡реА рдирд╣реАрдВ рд╣реИ ... рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдЖрд╕рд╛рди, рдкреНрд░рд╛рд░рдВрднрд┐рдХ рддрд░реАрдХрд╛ рд╣реИред рдпрд╣ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ, рд▓реЗрдХрд┐рди рдкрд░рд┐рдгрд╛рдо рдХрд╛рдлреА рдЕрдЪреНрдЫреЗ рд╣реЛрдВрдЧреЗред рдореБрдЦреНрдп рд╕рдорд╕реНрдпрд╛ рдХрдИ рдореГрдд рдЕрдВрдд рдЧрд▓рд┐рдпрд╛рд░реЗ рд╣реЛрдВрдЧреЗред рдмрд╛рдж рдореЗрдВ, рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ, рддреЛ рдореИрдВ рдмреЗрд╣рддрд░ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкрд░ рдПрдХ рдФрд░ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╣рдо рдЬрд┐рд╕ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рд╡рд╣ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ: рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╢реВрдиреНрдп рдорд╛рдиреЛрдВ рд╕реЗ рднрд░рд╛ рдПрдХ рдкреВрд░рд╛ рдирдХреНрд╢рд╛ рд╣реИ - рдПрдХ рд╕реНрддрд░ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдкрддреНрдерд░ рд╢рд╛рдорд┐рд▓ рд╣реИред рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╣рдордиреЗ рдХреЗрдВрджреНрд░ рдХреЗ рдПрдХ рдХрдорд░реЗ рдХреЛ рдХрд╛рдЯ рджрд┐рдпрд╛ред рдЗрд╕ рдХрдорд░реЗ рд╕реЗ рд╣рдо рдПрдХ рджрд┐рд╢рд╛ рдореЗрдВ рдЧрд▓рд┐рдпрд╛рд░реЗ рд╕реЗ рдЧреБрдЬрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рджреВрд╕рд░реЗ рдЧрд▓рд┐рдпрд╛рд░реЛрдВ рдФрд░ рдХрдорд░реЛрдВ рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рд╣рдореЗрд╢рд╛ рдПрдХ рдореМрдЬреВрджрд╛ рдХрдорд░реЗ рдпрд╛ рдЧрд▓рд┐рдпрд╛рд░реЗ рд╕реЗ рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рдЬрдм рддрдХ рдХрд┐ рд╣рдо рдмрд╣реБрдд рд╢реБрд░реБрдЖрдд рдореЗрдВ рджрд┐рдП рдЧрдП рдЧрд▓рд┐рдпрд╛рд░реЛрдВ / рдХрдорд░реЛрдВ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ рддрдХ рдирд╣реАрдВ рдкрд╣реБрдВрдЪрддреЗред рдпрд╛ рдЬрдм рддрдХ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдПрдХ рдирдП рдХрдорд░реЗ / рдЧрд▓рд┐рдпрд╛рд░реЗ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдИ рдЬрдЧрд╣ рдирд╣реАрдВ рдкрд╛ рд╕рдХрддрд╛, рдЬреЛ рднреА рдкрд╣рд▓реЗ рдЖрддрд╛ рд╣реИред рдФрд░ рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдХрд╛рд▓рдХреЛрдард░реА рдорд┐рд▓рддреА рд╣реИред

рддреЛ, рдЖрдЗрдП рдЗрд╕рдХрд╛ рд╡рд░реНрдгрди рдЕрдзрд┐рдХ рдПрд▓реНрдЧреЛрд░рд┐рдердо-рдЬреИрд╕реЗ рддрд░реАрдХреЗ рд╕реЗ рдХрд░реЗрдВ, рдЪрд░рдг рджрд░ рдЪрд░рдгред рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдирдХреНрд╢реЗ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рд╡рд░рдг (рдЧрд▓рд┐рдпрд╛рд░реЗ рдпрд╛ рдХрдорд░реЗ) рдХреЛ рдПрдХ рддрддреНрд╡ рдХрд╣реВрдВрдЧрд╛ рддрд╛рдХрд┐ рдореБрдЭреЗ рд╣рд░ рдмрд╛рд░ "рдХрдорд░рд╛ / рдЧрд▓рд┐рдпрд╛рд░рд╛" рдХрд╣рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рди рдкрдбрд╝реЗред

  1. рдирдХреНрд╢реЗ рдХреЗ рдХреЗрдВрджреНрд░ рдореЗрдВ рдХрдорд░реЗ рдХреЛ рдХрд╛рдЯреЗрдВ
  2. рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ рджреАрд╡рд╛рд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ
  3. рд╣рдо рдЗрд╕ рджреАрд╡рд╛рд░ рдореЗрдВ рдЧрд▓рд┐рдпрд╛рд░реЗ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рддреЛрдбрд╝рддреЗ рд╣реИрдВ
  4. рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ рдореМрдЬреВрджрд╛ рддрддреНрд╡реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред
  5. рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ рдЗрд╕ рддрддреНрд╡ рдХреА рджреАрд╡рд╛рд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ
  6. рдпрджрд┐ рдЕрдВрддрд┐рдо рдЪрдпрдирд┐рдд рдЖрдЗрдЯрдо рдПрдХ рдХрдорд░рд╛ рд╣реИ, рддреЛ рд╣рдо рдПрдХ рдЧрд▓рд┐рдпрд╛рд░рд╛ рдмрдирд╛рддреЗ рд╣реИрдВред рдпрджрд┐ рдЧрд▓рд┐рдпрд╛рд░рд╛ рд╣реИ, рддреЛ рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ рдЪреБрдиреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЕрдЧрд▓рд╛ рддрддреНрд╡ рдПрдХ рдХрдорд░рд╛ рдпрд╛ рджреВрд╕рд░рд╛ рдЧрд▓рд┐рдпрд╛рд░рд╛ рд╣реЛрдЧрд╛
  7. рд╡рд╛рдВрдЫрд┐рдд рдЖрдЗрдЯрдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрдпрдирд┐рдд рджрд┐рд╢рд╛ рдореЗрдВ рдкрд░реНрдпрд╛рдкреНрдд рдЬрдЧрд╣ рд╣реИ рдпрд╛ рдирд╣реАрдВ, рдЗрд╕рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ
  8. рдпрджрд┐ рдХреЛрдИ рдЬрдЧрд╣ рд╣реИ, рддреЛ рдПрдХ рддрддреНрд╡ рдмрдирд╛рдПрдВ, рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдЪрд░рдг 4 рдкрд░ рд╡рд╛рдкрд╕ рд▓реМрдЯреЗрдВ
  9. рдЪрд░рдг 4 рд╕реЗ рджреЛрд╣рд░рд╛рдПрдБ

рдмрд╕ рдЗрддрдирд╛ рд╣реАред рд╣рдореЗрдВ рдХрд╛рд▓рдХреЛрдард░реА рдХрд╛ рдПрдХ рд╕рд░рд▓ рдирдХреНрд╢рд╛ рдорд┐рд▓реЗрдЧрд╛, рдЬрд┐рд╕рдореЗрдВ рдХреЗрд╡рд▓ рдХрдорд░реЗ рдФрд░ рдЧрд▓рд┐рдпрд╛рд░реЗ рд╣реИрдВ, рдмрд┐рдирд╛ рджрд░рд╡рд╛рдЬреЗ рдФрд░ рд╡рд┐рд╢реЗрд╖ рддрддреНрд╡ рдХреЗ, рд▓реЗрдХрд┐рди рдпрд╣ рд╣рдорд╛рд░реА рд╢реБрд░реБрдЖрдд рд╣реЛрдЧреАред рдмрд╛рдж рдореЗрдВ рд╣рдо рдЗрд╕реЗ рдЫрд╛рддреА, рджреБрд╢реНрдордиреЛрдВ рдФрд░ рдЬрд╛рд▓ рд╕реЗ рднрд░ рджреЗрдВрдЧреЗред рдФрд░ рдЖрдк рдЗрд╕реЗ рдХрд╕реНрдЯрдорд╛рдЗрдЬрд╝ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: рд╣рдо рд╕реАрдЦреЗрдВрдЧреЗ рдХрд┐ рдЖрдкрдХреЛ рдХреИрд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рддрддреНрд╡реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╣реИред

рд╕реНрдЯреЗрдЬ 5 - рдХрдорд░реЗ рдХреЛ рдХрд╛рдЯ рджрд┐рдпрд╛


рдЕрдВрдд рдореЗрдВ рдХреЛрдбрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝реЗрдВ! рдЪрд▓реЛ рд╣рдорд╛рд░реЗ рдкрд╣рд▓реЗ рдХрдорд░реЗ рдореЗрдВ рдХрдЯреМрддреАред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдПрдХ рдирдИ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдПрдВ рдФрд░ рдЗрд╕реЗ рдбрдВрдЧрдСрдирдЧреЗрдВрд╕рд░ рдХрд╣реЗрдВред рдпрд╣ Monobehaviour рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓реЗрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдЗрд╕реЗ рдмрд╛рдж рдореЗрдВ GameObject рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдлрд┐рд░ рд╣рдореЗрдВ рдХрдХреНрд╖рд╛ рдореЗрдВ рдХрдИ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдЪрд░ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рддрд╛рдХрд┐ рд╣рдо рдирд┐рд░реАрдХреНрд╖рдХ рд╕реЗ рдХрд╛рд▓рдХреЛрдард░реА рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХреЗрдВред рдпреЗ рдЪрд░ рдирдХреНрд╢реЗ рдХреА рдЪреМрдбрд╝рд╛рдИ рдФрд░ рдКрдВрдЪрд╛рдИ, рдХрдорд░реЛрдВ рдХреА рдиреНрдпреВрдирддрдо рдФрд░ рдЕрдзрд┐рдХрддрдо рдКрдВрдЪрд╛рдИ рдФрд░ рдЪреМрдбрд╝рд╛рдИ, рдЧрд▓рд┐рдпрд╛рд░реЛрдВ рдХреА рдЕрдзрд┐рдХрддрдо рд▓рдВрдмрд╛рдИ рдФрд░ рддрддреНрд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реЛрдЧреА рдЬреЛ рдирдХреНрд╢реЗ рдкрд░ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред


рдЖрдЧреЗ рд╣рдореЗрдВ рдХрд╛рд▓рдХреЛрдард░реА рдЬрдирд░реЗрдЯрд░ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдо рдРрд╕рд╛ рдЙрди рдЪрд░реЛрдВ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдкреАрдврд╝реА рджреНрд╡рд╛рд░рд╛ рдЖрдмрд╛рдж рд╣реЛрдВрдЧреЗред рдЕрднреА рдХреЗ рд▓рд┐рдП, рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдирдХреНрд╢рд╛ рд╣реЛрдЧрд╛ред рдФрд░, рд╕реНрдЯрд╛рд░реНрдЯ () рдФрд░ рдЕрдкрдбреЗрдЯ () рдлрд╝рдВрдХреНрд╢рдВрд╕ рднреА рд╣рдЯрд╛ рджреЗрдВ рдЬреЛ рдПрдХрддрд╛ рдирдИ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рдЙрддреНрдкрдиреНрди рдХрд░рддреА рд╣реИ, рд╣рдореЗрдВ рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред



рдпрд╣рд╛рдБ рд╣рдордиреЗ MapManager рд╡рд░реНрдЧ (рдЬреЛ рд╣рдордиреЗ рдкрд┐рдЫрд▓реЗ рдЪрд░рдг рдореЗрдВ рдмрдирд╛рдпрд╛ рдерд╛) рдХреЗ рдорд╛рдирдЪрд┐рддреНрд░ рдЪрд░ рдХреЛ рдЖрд░рдВрднреАрдХреГрдд рдХрд┐рдпрд╛ рдерд╛, рдЬреЛ рдорд╛рдирдЪрд┐рддреНрд░ рдХреА рдЪреМрдбрд╝рд╛рдИ рдФрд░ рдКрдБрдЪрд╛рдИ рдХреЛ рдкрд╛рд░ рдХрд░рддреЗ рд╣реБрдП, рд╕рд░рдгреА рдХреЗ рджреЛ рдЖрдпрд╛рдореЛрдВ рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдКрдкрд░ рдЪрд░ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреНрд╖реИрддрд┐рдЬ x рдЖрдХрд╛рд░ (рдЪреМрдбрд╝рд╛рдИ) рдФрд░ рдКрд░реНрдзреНрд╡рд╛рдзрд░ y рдЖрдХрд╛рд░ (рдКрдБрдЪрд╛рдИ) рдХрд╛ рдПрдХ рдирдХреНрд╢рд╛ рд╣реЛрдЧрд╛, рдФрд░ рд╣рдо MapManager.map [x, y] рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдХреЗ рдХрд┐рд╕реА рднреА рдХрдХреНрд╖ рддрдХ рдкрд╣реБрдБрдЪ рд╕рдХрддреЗ рд╣реИрдВред рд╡рд╕реНрддреБрдУрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ред

рдЕрдм рд╣рдо рдкрд╣рд▓реЗ рдХрдорд░реЗ рдХреЛ рд░реЗрдВрдбрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрдВрдХреНрд╢рди рдмрдирд╛рдПрдВрдЧреЗред рд╣рдо рдЗрд╕реЗ FirstRoom () рдХрд╣реЗрдВрдЧреЗред рд╣рдордиреЗ InitializeDungeon () рдХреЛ рдПрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдлрд╝рдВрдХреНрд╢рди рдмрдирд╛рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдЕрдиреНрдп рд╕реНрдХреНрд░рд┐рдкреНрдЯ (рдЧреЗрдо рдореИрдиреЗрдЬрд░, рдЬрд┐рд╕реЗ рд╣рдо рдЬрд▓реНрдж рд╣реА рдмрдирд╛рдПрдВрдЧреЗ; рдпрд╣ рдкреВрд░реА рдЧреЗрдо рд▓реЙрдиреНрдЪ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдкреНрд░рдмрдВрдзрди рдХреЛ рдХреЗрдВрджреНрд░реАрдХреГрдд рдХрд░ рджреЗрдЧрд╛) рджреНрд╡рд╛рд░рд╛ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд╣рдореЗрдВ FirstRoom () рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдмрд╛рд╣рд░реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред

рдЕрдм, рдЬрд╛рд░реА рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо MapManager рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рддреАрди рдирдИ рдХрдХреНрд╖рд╛рдПрдВ рдмрдирд╛рдПрдВрдЧреЗ рддрд╛рдХрд┐ рдЖрдк рдПрдХ рдХрдорд░рд╛ рдмрдирд╛ рд╕рдХреЗрдВред рдпреЗ рдлрд╝реАрдЪрд░, рджреАрд╡рд╛рд░ рдФрд░ рд╕реНрдерд┐рддрд┐ рд╡рд░реНрдЧ рд╣реИрдВред рд╕реНрдерд┐рддрд┐ рд╡рд░реНрдЧ рдореЗрдВ x рдФрд░ y рд╕реНрдерд╛рди рд╣реЛрдВрдЧреЗ рддрд╛рдХрд┐ рд╣рдо рдпрд╣ рдЯреНрд░реИрдХ рдХрд░ рд╕рдХреЗрдВ рдХрд┐ рд╕рдм рдХреБрдЫ рдХрд╣рд╛рдБ рд╣реИред рджреАрд╡рд╛рд░ рдореЗрдВ рдкрджреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реЛрдЧреА, рдЬрд┐рд╕ рджрд┐рд╢рд╛ рдореЗрдВ рдпрд╣ рдХрдорд░реЗ рдХреЗ рдЙрддреНрддрд░ (рдЙрддреНрддрд░, рджрдХреНрд╖рд┐рдг, рдкреВрд░реНрд╡ рдпрд╛ рдкрд╢реНрдЪрд┐рдо), рд▓рдВрдмрд╛рдИ рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ "рджрд┐рдЦрддрд╛ рд╣реИ" рдФрд░ рдЗрд╕рд╕реЗ рдмрдиреЗ рдПрдХ рдирдП рддрддреНрд╡ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рд╣реИред рддрддреНрд╡ рдореЗрдВ рдЙрди рд╕рднреА рдкрджреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реЛрдЧреА рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рд╢рд╛рдорд┐рд▓ рд╣реИ, рддрддреНрд╡ рдХрд╛ рдкреНрд░рдХрд╛рд░ (рдХрдорд░рд╛ рдпрд╛ рдЧрд▓рд┐рдпрд╛рд░рд╛), рд╡реЙрд▓ рдЪрд░ рдХреА рдПрдХ рд╕рд░рдгреА, рдФрд░ рдЗрд╕рдХреА рдЪреМрдбрд╝рд╛рдИ рдФрд░ рдКрдВрдЪрд╛рдИред



рдЕрдм FirstRoom () рдлрдВрдХреНрд╢рди рдореЗрдВ рдЖрддреЗ рд╣реИрдВред рдЪрд▓рд┐рдП рдбрдВрдЧрдСрдирдЧреЗрдВрдЯрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ InitializeDungeon рдХреЗ рдареАрдХ рдиреАрдЪреЗ рдПрдХ рдлрдВрдХреНрд╢рди рдмрдирд╛рддреЗ рд╣реИрдВред рдЙрд╕реЗ рдХрд┐рд╕реА рднреА рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕реЗ рд╕рд░рд▓ () рдЫреЛрдбрд╝ рджреЗрдВрдЧреЗред рдЕрдЧрд▓рд╛, рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдВрджрд░, рд╣рдореЗрдВ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рд░реВрдо рд╡реЗрд░рд┐рдПрдмрд▓ рдФрд░ рдЙрд╕рдХреА рд╕реНрдерд┐рддрд┐ рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХреА рд╕реВрдЪреА рдмрдирд╛рдиреЗ рдФрд░ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдо рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рдХрд░рддреЗ рд╣реИрдВ:


рдЕрдм рдХрдорд░реЗ рдХрд╛ рдЖрдХрд╛рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдШреЛрд╖рд┐рдд рдиреНрдпреВрдирддрдо рдФрд░ рдЕрдзрд┐рдХрддрдо рдКрдВрдЪрд╛рдИ рдФрд░ рдЪреМрдбрд╝рд╛рдИ рдХреЗ рдмреАрдЪ рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдореВрд▓реНрдп рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдЧрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╡реЗ рдЦрд╛рд▓реА рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдордиреЗ рдирд┐рд░реАрдХреНрд╖рдХ рдореЗрдВ рдЙрдирдХреЗ рд▓рд┐рдП рдХреЛрдИ рдореВрд▓реНрдп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЪрд┐рдВрддрд╛ рди рдХрд░реЗрдВ, рд╣рдо рдЗрд╕реЗ рдЬрд▓реНрдж рд╣реА рдХрд░реЗрдВрдЧреЗред рд╣рдо рдЗрд╕ рддрд░рд╣ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдорд╛рди рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ:


рдЕрдЧрд▓рд╛, рд╣рдореЗрдВ рдпрд╣ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдХрдорд░реЗ рдХрд╛ рд╢реБрд░реБрдЖрддреА рдмрд┐рдВрджреБ рдХрд╣рд╛рдБ рд╕реНрдерд┐рдд рд╣реЛрдЧрд╛, рдЕрд░реНрдерд╛рддреН, рдЬрд╣рд╛рдБ рдкрд░ рдХрдорд░рд╛ 0.0 рдХрд╛ рдмрд┐рдВрджреБ рдореИрдк рдЧреНрд░рд┐рдб рдореЗрдВ рд╕реНрдерд┐рдд рд╣реЛрдЧрд╛ред рд╣рдо рдЗрд╕реЗ рдорд╛рдирдЪрд┐рддреНрд░ рдХреЗ рдХреЗрдВрджреНрд░ рдореЗрдВ рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рдЖрдзреА рдЪреМрдбрд╝рд╛рдИ рдФрд░ рдЖрдзреА рдКрдВрдЪрд╛рдИ), рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рдХреЗрдВрджреНрд░ рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ ред рдпрд╣ рдПрдХ рдЫреЛрдЯреЗ рд░реИрдВрдбрдорд╛рдЗрдЬрд╝рд░ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рдереЛрдбрд╝рд╛ рдмрд╛рдПрдВ рдФрд░ рдиреАрдЪреЗ рдЪрд▓рд╛ рдЬрд╛рдПред рдЗрд╕рд▓рд┐рдП, рд╣рдо xStartingPoint рдХреЛ рдорд╛рдирдЪрд┐рддреНрд░ рдХреА рдЖрдзреА рдЪреМрдбрд╝рд╛рдИ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ yStartingPoint рдХреЛ рдорд╛рдирдЪрд┐рддреНрд░ рдХреА рдЖрдзреА рдКрдБрдЪрд╛рдИ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдмрд╕ рджрд┐рдП рдЧрдП рд░реВрдорд╡рд┐рдж рдФрд░ рд░реВрдорд╣рд╛рдЗрдЯ рдХреЛ рд▓реЗрддреЗ рд╣реИрдВ, рд╣рдореЗрдВ 0 рд╕реЗ рдЗрд╕ рдЪреМрдбрд╝рд╛рдИ (рдКрдБрдЪрд╛рдИ) рдХрд╛ рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдорд╛рди рдорд┐рд▓рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕реЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ x рдФрд░ y рд╕реЗ рдШрдЯрд╛рддреЗ рд╣реИрдВред рдРрд╢реЗ рд╣реА:



рдЕрдЧрд▓рд╛, рдЙрд╕реА рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рд╣рдо рджреАрд╡рд╛рд░реЛрдВ рдХреЛ рдЬреЛрдбрд╝ рджреЗрдВрдЧреЗред рд╣рдореЗрдВ рдирдИ рдмрдирд╛рдИ рдЧрдИ рдХрдорд░реЗ рдХреЗ рдЪрд░ рдореЗрдВ рджреАрд╡рд╛рд░реЛрдВ рдХреА рд╕рд░рдгреА рдХреЛ рдЖрд░рдВрднреАрдХреГрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдЗрд╕ рд╕рд░рдгреА рдХреЗ рдЕрдВрджрд░ рдкреНрд░рддреНрдпреЗрдХ рджреАрд╡рд╛рд░ рдЪрд░ рдХреЛ рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВред рдФрд░ рдлрд┐рд░ рдкрджреЛрдВ рдХреА рдкреНрд░рддреНрдпреЗрдХ рд╕реВрдЪреА рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░реЗрдВ, рджреАрд╡рд╛рд░ рдХреА рд▓рдВрдмрд╛рдИ 0 рдкрд░ рд╕реЗрдЯ рдХрд░реЗрдВ рдФрд░ рдЙрд╕ рджрд┐рд╢рд╛ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░реЗрдВ рдЬрд┐рд╕рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рджреАрд╡рд╛рд░ "рджрд┐рдЦреЗрдЧреА"ред

рд╕рд░рдгреА рдЖрд░рдВрднреАрдХреГрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо () рд▓реВрдк рдореЗрдВ рд╕рд░рдгреА рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рддрддреНрд╡ рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рд▓реВрдк рдХрд░рддреЗ рд╣реИрдВ, рдкреНрд░рддреНрдпреЗрдХ рджреАрд╡рд╛рд░ рдХреЗ рдЪрд░ рдХреЛ рдЖрд░рдВрднреАрдХреГрдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рд╕реНрд╡рд┐рдЪ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ рджреАрд╡рд╛рд░ рдХреА рджрд┐рд╢рд╛ рдХрд╛ рдирд╛рдо рджреЗрддрд╛ рд╣реИред рдпрд╣ рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рдЪреБрдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдпрд╣ рдпрд╛рдж рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдЙрдирдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реЛрдЧрд╛ред


рдЕрдм рд╣рдо рджреАрд╡рд╛рд░реЛрдВ рдХреЛ рд░рдЦрдиреЗ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рд▓реВрдк рдХреЗ рд▓рд┐рдП рджреЛ рдиреЗрд╕реНрдЯреЗрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВрдЧреЗред рдмрд╛рд╣рд░реА рд▓реВрдк рдореЗрдВ, рд╣рдо рдХрдорд░реЗ рдореЗрдВ рд╕рднреА y рдорд╛рдиреЛрдВ рдФрд░ рдиреЗрд╕реНрдЯреЗрдб рд▓реВрдк рдореЗрдВ, рд╕рднреА x рдорд╛рдиреЛрдВ рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдЬрд╛рддреЗ рд╣реИрдВред рдЗрд╕ рддрд░рд╣ рд╣рдо рдкрдВрдХреНрддрд┐ y рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд▓ x рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВрдЧреЗ рддрд╛рдХрд┐ рд╣рдо рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХреЗрдВред


рдлрд┐рд░ рдкрд╣рд▓реА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдХрдорд░реЗ рдХреА рд╕реНрдерд┐рддрд┐ рд╕реЗ рдирдХреНрд╢рд╛ рдкреИрдорд╛рдиреЗ рдкрд░ рд╕реЗрд▓ рдХреА рд╕реНрдерд┐рддрд┐ рдХрд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдореВрд▓реНрдп рдкрддрд╛ рдХрд░рдирд╛ рд╣реИред рдпрд╣ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ: рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╢реБрд░реБрдЖрддреА рдмрд┐рдВрджреБ x рдФрд░ y рд╣реИрдВред рд╡реЗ рдХрдорд░реЗ рдХреЗ рдЧреНрд░рд┐рдб рдореЗрдВ 0,0 рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЛрдВрдЧреЗред рдлрд┐рд░ рдпрджрд┐ рд╣рдореЗрдВ рдХрд┐рд╕реА рд╕реНрдерд╛рдиреАрдп x, y рд╕реЗ x, y рдХрд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рд╣рдо рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкрджреЛрдВ x рдФрд░ y рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдиреАрдп x рдФрд░ y рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рдлрд┐рд░ рд╣рдо рдЗрди рд╡рд╛рд╕реНрддрд╡рд┐рдХ x, y рдорд╛рдиреЛрдВ рдХреЛ рд╕реНрдерд┐рддрд┐ рдЪрд░ (рдкрд╣рд▓реЗ рд╕реЗ рдирд┐рд░реНрдорд┐рдд рд╡рд░реНрдЧ рд╕реЗ) рдореЗрдВ рд╕рд╣реЗрдЬрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдХрдорд░реЗ рдХреЗ рдкрджреЛрдВ рдХреА рд╕реВрдЪреА <> рдореЗрдВ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред


рдЕрдЧрд▓рд╛ рдХрджрдо рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдорд╛рдирдЪрд┐рддреНрд░ рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рд╣реИред рдорд╛рдиреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЯрд╛рдЗрд▓ рдЪрд░ рдХреЛ рдкреНрд░рд╛рд░рдВрдн рдХрд░рдирд╛ рдпрд╛рдж рд░рдЦреЗрдВред


рдЕрдм рд╣рдо рдЯрд╛рдЗрд▓ рд╡рд░реНрдЧ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд░реЗрдВрдЧреЗред рдЖрдЗрдП MapManager рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдЯрд╛рдЗрд▓ рд╡рд░реНрдЧ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдореЗрдВ рдПрдХ рдкрдВрдХреНрддрд┐ рдЬреЛрдбрд╝реЗрдВ: "рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкреНрд░рдХрд╛рд░;"ред рдпрд╣ рд╣рдореЗрдВ рдпрд╣ рдШреЛрд╖рд┐рдд рдХрд░рдХреЗ рдПрдХ рдЯрд╛рдЗрд▓ рд╡рд░реНрдЧ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ рдХрд┐ x, y рдореЗрдВ рдЯрд╛рдЗрд▓ рдПрдХ рджреАрд╡рд╛рд░, рдлрд░реНрд╢, рдпрд╛ рдХреБрдЫ рдФрд░ рд╣реИред рдЕрдЧрд▓рд╛, рд╣рдо рдЙрд╕ рдЪрдХреНрд░ рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рд╣рдордиреЗ рдХрд╛рдо рдХрд┐рдпрд╛ рдерд╛ рдФрд░ рдПрдХ рдмрдбрд╝рд╛ рдЕрдЧрд░-рдФрд░ рдирд┐рд░реНрдорд╛рдг рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рдЬреЛ рд╣рдореЗрдВ рди рдХреЗрд╡рд▓ рдЗрд╕ рджреАрд╡рд╛рд░ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рджреАрд╡рд╛рд░, рдЙрд╕рдХреА рд▓рдВрдмрд╛рдИ рдФрд░ рд╕рднреА рдкрджреЛрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛, рдмрд▓реНрдХрд┐ рд╡реИрд╢реНрд╡рд┐рдХ рдорд╛рдирдЪрд┐рддреНрд░ рдкрд░ рднреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЯрд╛рдЗрд▓ рдХреНрдпрд╛ рд╣реИ - рдПрдХ рджреАрд╡рд╛рд░ рдпрд╛ рд▓рд┐рдВрдЧред


рдФрд░ рд╣рдо рдкрд╣рд▓реЗ рд╣реА рдХреБрдЫ рдХрд░ рдЪреБрдХреЗ рд╣реИрдВред рдпрджрд┐ рдЪрд░ y (рдмрд╛рд╣рд░реА рд▓реВрдк рдореЗрдВ рдЪрд░ рдХрд╛ рдирд┐рдпрдВрддреНрд░рдг) 0 рд╣реИ, рддреЛ рдЯрд╛рдЗрд▓ рдХрдорд░реЗ рдореЗрдВ рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХреА рд╕рдмрд╕реЗ рдирд┐рдЪрд▓реА рдкрдВрдХреНрддрд┐ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рдЕрд░реНрдерд╛рдд рдпрд╣ рджрдХреНрд╖рд┐рдг рдХреА рджреАрд╡рд╛рд░ рд╣реИред рдпрджрд┐ x (рдЖрдВрддрд░рд┐рдХ рд▓реВрдк рдЪрд░ рдХрд╛ рдирд┐рдпрдВрддреНрд░рдг) 0 рд╣реИ, рддреЛ рдЯрд╛рдЗрд▓ рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХреЗ рд╕рдмрд╕реЗ рдмрд╛рдПрдВ рд╕реНрддрдВрдн рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рдЕрд░реНрдерд╛рдд, рдпрд╣ рдкрд╢реНрдЪрд┐рдореА рджреАрд╡рд╛рд░ рд╣реИред рдФрд░ рдЕрдЧрд░ рдпрд╣ рдмрд╣реБрдд рдКрдкрд░ рдХреА рд░реЗрдЦрд╛ рдкрд░ рд╣реИ, рддреЛ рдпрд╣ рдЙрддреНрддрд░ рдХреА рджреАрд╡рд╛рд░ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рдФрд░ рдмрд╣реБрдд рджрд╛рдИрдВ рдУрд░ - рдкреВрд░реНрд╡ рдХреА рджреАрд╡рд╛рд░ рд╕реЗред рд╣рдо 1 рдХреЛ рд╡реИрд░рд┐рдПрдмрд▓ рд░реВрдорд╡реЗрдЯ рдФрд░ рд░реВрдорд╣рд╛рдЗрдЯ рд╕реЗ рдШрдЯрд╛рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЗрди рдорд╛рдиреЛрдВ рдХреА рдЧрдгрдирд╛ 1 рд╕реЗ рд╢реБрд░реВ рдХреА рдЧрдИ рдереА, рдФрд░ рдЪрдХреНрд░ рдХреЗ рдПрдХреНрд╕ рдФрд░ рд╡рд╛рдИ рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ 0 рд╕реЗ рд╢реБрд░реВ рд╣реБрдП рдереЗ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдЗрд╕ рдЕрдВрддрд░ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред рдФрд░ рд╕рднреА рдХреЛрд╢рд┐рдХрд╛рдПрдВ рдЬреЛ рд╢рд░реНрддреЛрдВ рдХреЛ рдкреВрд░рд╛ рдирд╣реАрдВ рдХрд░рддреА рд╣реИрдВ рд╡реЗ рджреАрд╡рд╛рд░реЗрдВ рдирд╣реАрдВ рд╣реИрдВ, рдЕрд░реНрдерд╛рддреН рд╡реЗ рдлрд░реНрд╢ рд╣реИрдВред


рдорд╣рд╛рди, рд╣рдо рд▓рдЧрднрдЧ рдкрд╣рд▓реЗ рдХрдорд░реЗ рдХреЗ рд╕рд╛рде рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдпрд╣ рд▓рдЧрднрдЧ рддреИрдпрд╛рд░ рд╣реИ, рд╣рдореЗрдВ рдХреЗрд╡рд▓ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдП рдЧрдП рд╡реИрд░рд┐рдПрдмрд▓ рдореЗрдВ рдЕрдВрддрд┐рдо рдорд╛рди рд░рдЦрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред рд╣рдо рд▓реВрдк рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рддреЗ рд╣реИрдВ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕рдорд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ:


рдареАрдХ! рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдХрдорд░рд╛ рд╣реИ!

рд▓реЗрдХрд┐рди рд╣рдо рдХреИрд╕реЗ рд╕рдордЭрддреЗ рд╣реИрдВ рдХрд┐ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ? рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдкрд░реАрдХреНрд╖рдг рдХреИрд╕реЗ рдХрд░реЗрдВ? рд╣рдо рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рдордп рдмрд┐рддрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рдВрдкрддреНрддрд┐ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдордп рдХреА рдмрд░реНрдмрд╛рджреА рд╣реЛрдЧреА рдФрд░ рд╣рдореЗрдВ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдкреВрд░рд╛ рдХрд░рдиреЗ рд╕реЗ рднреА рд╡рд┐рдЪрд▓рд┐рдд рдХрд░ рджреЗрдЧреАред рд╣рдореНрдо, рд▓реЗрдХрд┐рди рдпрд╣ ASCII рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ! рд╣рд╛рдБ, рдорд╣рд╛рди рд╡рд┐рдЪрд╛рд░! ASCII рдПрдХ рдирдХреНрд╢рд╛ рдЦреАрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рдФрд░ рдХрдо рд▓рд╛рдЧрдд рд╡рд╛рд▓рд╛ рддрд░реАрдХрд╛ рд╣реИ рддрд╛рдХрд┐ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ, рддреЛ рдЖрдк рд╕реНрдкреНрд░рд╛рдЗрдЯреНрд╕ рдФрд░ рд╡рд┐рдЬрд╝реБрдЕрд▓ рдЗрдлреЗрдХреНрдЯреНрд╕ рд╡рд╛рд▓реЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕реЗ рд╣рдо рдмрд╛рдж рдореЗрдВ рдЕрдзреНрдпрдпрди рдХрд░реЗрдВрдЧреЗ, рдФрд░ рдПрдПрд╕рд╕реАрдЖрдИрдЖрдИ рдореЗрдВ рдЕрдкрдирд╛ рдкреВрд░рд╛ рдЧреЗрдо рдмрдирд╛рдПрдВрдЧреЗред рддреЛ рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЪрд░рдг 6 - рдкрд╣рд▓рд╛ рдХрдорд░рд╛ рдЦреАрдВрдЪрдирд╛


рдПрдПрд╕рд╕реАрдЖрдИрдЖрдИ рдХрд╛рд░реНрдб рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╕рдордп рд╕реЛрдЪрдиреЗ рд╡рд╛рд▓реА рдкрд╣рд▓реА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдХреМрди рд╕рд╛ рдлрд╝реЙрдиреНрдЯ рдЪреБрдирдирд╛ рд╣реИред рдПрдПрд╕рд╕реАрдЖрдИрдЖрдИ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╝реЙрдиреНрдЯ рдЪреБрдирддреЗ рд╕рдордп рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдореБрдЦреНрдп рдХрд╛рд░рдХ рдпрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдЖрдиреБрдкрд╛рддрд┐рдХ (рдЪрд░ рдЪреМрдбрд╝рд╛рдИ) рдпрд╛ рдореЛрдиреЛрдкреЙрдЬрд╝реНрдб (рдирд┐рд╢реНрдЪрд┐рдд рдЪреМрдбрд╝рд╛рдИ) рд╣реИред рд╣рдореЗрдВ рдПрдХ рдореЛрдиреЛрд╕реНрдкреЗрд╕ рдлрд╝реЙрдиреНрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдХрд╛рд░реНрдб рдЖрд╡рд╢реНрдпрдХрддрд╛рдиреБрд╕рд╛рд░ рджрд┐рдЦреЗрдВ (рдиреАрдЪреЗ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВ)ред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдХреЛрдИ рднреА рдирдИ рдПрдХрддрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдПрд░рд┐рдпрд▓ рдлрд╝реЙрдиреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ, рдФрд░ рдпрд╣ рдореЛрдиреЛрдкреЙрдЬрд╝ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рджреВрд╕рд░рд╛ рдЦреЛрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╡рд┐рдВрдбреЛрдЬ 10 рдореЗрдВ рдЖрдо рддреМрд░ рдкрд░ рдлреЛрдВрдЯ рдХреВрд░рд┐рдпрд░ рдиреНрдпреВ, рдХрдиреНрд╕реЛрд▓ рдФрд░ рд▓реНрдпреВрд╕рд┐рдбрд╛ рдХрдВрд╕реЛрд▓ рд╣реЛрддреЗ рд╣реИрдВред рдЗрди рддреАрдиреЛрдВ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдХреЛ рдЪреБрдиреЗрдВ рдпрд╛ рдЕрдкрдиреА рдЬрд╝рд░реВрд░рдд рдХреЗ рд╕реНрдерд╛рди рдкрд░ рдХрд┐рд╕реА рдЕрдиреНрдп рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдПрд╕реЗрдЯреНрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рдЕрдВрджрд░ рдлрд╝реЙрдиреНрдЯреНрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд░рдЦреЗрдВред


рдЖрдЗрдП ASCII рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд▓рд┐рдП рджреГрд╢реНрдп рддреИрдпрд╛рд░ рдХрд░реЗрдВред рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рджреГрд╢реНрдп рдХреЗ рдореБрдЦреНрдп рдХреИрдорд░реЗ рдХреА рдкреГрд╖реНрдарднреВрдорд┐ рдХрд╛ рд░рдВрдЧ рдХрд╛рд▓рд╛ рдХрд░реЗрдВред рдлрд┐рд░ рд╣рдо рдХреИрдирд╡рд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рджреГрд╢реНрдп рдореЗрдВ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рдФрд░ рдЯреЗрдХреНрд╕реНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдЗрд╕рдореЗрдВ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рдЯреЗрдХреНрд╕реНрдЯ рдЖрдпрдд рдХреЗ рд░реВрдкрд╛рдВрддрд░рдг рдХреЛ рдордзреНрдп рдХреЗрдВрджреНрд░ рдФрд░ рд╕реНрдерд┐рддрд┐ 0,0,0 рдкрд░ рд╕реЗрдЯ рдХрд░реЗрдВред рдЯреЗрдХреНрд╕реНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рд╕реЗрдЯ рдХрд░реЗрдВ рддрд╛рдХрд┐ рдпрд╣ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЪрдпрдирд┐рдд рдлрд╝реЙрдиреНрдЯ рдФрд░ рд╕рдлреЗрдж рд░рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рд╣рдо рдХреНрд╖реИрддрд┐рдЬ рдФрд░ рдКрд░реНрдзреНрд╡рд╛рдзрд░ рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ (рдХреНрд╖реИрддрд┐рдЬ / рдКрд░реНрдзреНрд╡рд╛рдзрд░ рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣) рдХреЗ рд▓рд┐рдП рдУрд╡рд░рдлреНрд▓реЛ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдКрд░реНрдзреНрд╡рд╛рдзрд░ рдФрд░ рдХреНрд╖реИрддрд┐рдЬ рд╕рдВрд░реЗрдЦрдг рдХреЛ рдХреЗрдВрджреНрд░ рдореЗрдВ рд░рдЦрддреЗ рд╣реИрдВред рдлрд┐рд░ рдЯреЗрдХреНрд╕реНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ "ASCIITest" рдпрд╛ рдХреБрдЫ рдЗрд╕реА рддрд░рд╣ рдХрд╛ рдирд╛рдо рджреЗрдВред

рдЕрдм рдХреЛрдб рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдВред рдбрдВрдЧрдСрдирдЧреЗрдВрдЯрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ, рдПрдХ рдирдпрд╛ рдлрд╝рдВрдХреНрд╢рди рдмрдирд╛рдПрдВ рдЬрд┐рд╕рдХрд╛ рдирд╛рдо рд╣реИ рдбреНрд░рд╛рдкреЗрдЬрд╝ред рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЙрд╕реЗ рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдорд┐рд▓реЗ рдЬреЛ рдпрд╣ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреМрди рд╕рд╛ рдХрд╛рд░реНрдб рдЬреЗрдирд░реЗрдЯ рдХрд░рдирд╛ рд╣реИ - ASCII рдпрд╛ рд╕реНрдкреНрд░рд╛рдЗрдЯ, рдЗрд╕рд▓рд┐рдП рдмреВрд▓рд┐рдпрди рдкреИрд░рд╛рдореАрдЯрд░ рдмрдирд╛рдПрдВ рдФрд░ рдЗрд╕реЗ isASCII рдХрд╣реЗрдВред


рдлрд┐рд░ рд╣рдо рдЬрд╛рдБрдЪреЗрдВрдЧреЗ рдХрд┐ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдирдХреНрд╢рд╛ ASCII рд╣реИ рдпрд╛ рдирд╣реАрдВред рдпрджрд┐ рд╣рд╛рдБ (рдЕрднреА рдХреЗ рд▓рд┐рдП, рд╣рдо рдХреЗрд╡рд▓ рдЗрд╕ рдорд╛рдорд▓реЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ), рддреЛ рд╣рдо рджреГрд╢реНрдп рдореЗрдВ рдПрдХ рдкрд╛рда рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рдЦреЛрдЬ рдХрд░реЗрдВрдЧреЗ, рдЗрд╕реЗ рджрд┐рдП рдЧрдП рдирд╛рдо рдХреЛ рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд╕ рдХрд░реЗрдВ, рдФрд░ рдЗрд╕рдХрд╛ рдкрд╛рда рдШрдЯрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред рд▓реЗрдХрд┐рди рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдореЗрдВ рдПрдХрддрд╛ рдХреЛ рдмрддрд╛рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рд╣рдо рдпреВрдЖрдИ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реЗрдбрд░ рдХреЗ рд▓рд┐рдП UnityEngine.UI рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рд╛рдЗрди рдЬреЛрдбрд╝реЗрдВ:


рдареАрдХред рдЕрдм рд╣рдо рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЯреЗрдХреНрд╕реНрдЯ рдХрдВрдкреЛрдиреЗрдВрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдирдХреНрд╢рд╛ рдПрдХ рд╡рд┐рд╢рд╛рд▓ рд░реЗрдЦрд╛ рд╣реЛрдЧреА, рдЬреЛ рд╕реНрдХреНрд░реАрди рдкрд░ рдкрд╛рда рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рд▓рдХреНрд╖рд┐рдд рд╣реЛрддреА рд╣реИред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЗрддрдирд╛ рдЖрд╕рд╛рди рд╣реИред рддреЛ рдЪрд▓рд┐рдП рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ "" рдорд╛рди рд╕реЗ рдЖрд░рдВрдн рдХрд░рддреЗ рд╣реИрдВред


рдареАрдХред рдЗрд╕рд▓рд┐рдП, рд╣рд░ рдмрд╛рд░ рдбреНрд░реЙрдЕрдк рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╣рдореЗрдВ рдпрд╣ рд╕реВрдЪрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдХрд╛рд░реНрдб рдПрдХ ASCII рд╣реИ рдпрд╛ рдирд╣реАрдВред рдпрджрд┐ рдРрд╕рд╛ рд╣реИ (рдФрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╣рдореЗрд╢рд╛ рдпрд╣ рддрд░реАрдХрд╛ рд╣реЛрдЧрд╛, рд╣рдо рдмрд╛рдж рдореЗрдВ рдФрд░ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ), рддреЛ рдлрд╝рдВрдХреНрд╢рди "ASCIITest" рдирд╛рдордХ рдЧреЗрдордмрдЬреЗрдХреНрдЯ рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рджреГрд╢реНрдп рдкрджрд╛рдиреБрдХреНрд░рдо рдХреА рдЦреЛрдЬ рдХрд░реЗрдЧрд╛ред рдпрджрд┐ рдпрд╣ рд╣реИ, рддреЛ рдпрд╣ рдЕрдкрдиреЗ рдкрд╛рда рдШрдЯрдХ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдЧрд╛ рдФрд░ рдЗрд╕реЗ рд╕реНрдХреНрд░реАрди рдЪрд░ рдореЗрдВ рдмрдЪрд╛рдПрдЧрд╛, рдЬрд┐рд╕рдореЗрдВ рд╣рдо рддрдм рдЖрд╕рд╛рдиреА рд╕реЗ рдорд╛рдирдЪрд┐рддреНрд░ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВред рдлрд┐рд░ рдпрд╣ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдмрдирд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдореВрд▓реНрдп рд╢реБрд░реВ рдореЗрдВ рдЦрд╛рд▓реА рд╣реИред рд╣рдо рдкреНрд░рддреАрдХреЛрдВ рдХреЗ рд╕рд╛рде рдЪрд┐рд╣реНрдирд┐рдд рд╣рдорд╛рд░реЗ рдирдХреНрд╢реЗ рдХреЗ рд╕рд╛рде рдЗрд╕ рд▓рд╛рдЗрди рдХреЛ рднрд░ рджреЗрдВрдЧреЗред

рдЖрдорддреМрд░ рдкрд░ рд╣рдо рдПрдХ рд▓реВрдк рдореЗрдВ рдирдХреНрд╢реЗ рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдЬрд╛рддреЗ рд╣реИрдВ, 0 рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреА рд▓рдВрдмрд╛рдИ рдХреЗ рдЕрдВрдд рддрдХ рдЬрд╛рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рд░реЗрдЦрд╛ рдХреЛ рднрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдкрд╛рда рдХреА рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рд╕реЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рдЕрд░реНрдерд╛рддреН рд╕рдмрд╕реЗ рдКрдкрд░ рдХреА рд░реЗрдЦрд╛ред рдЗрд╕рд▓рд┐рдП, y рдЕрдХреНрд╖ рдкрд░, рд╣рдореЗрдВ рд╡рд┐рдкрд░реАрдд рджрд┐рд╢рд╛ рдореЗрдВ рдПрдХ рд▓реВрдк рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреЛ рдЕрдВрдд рд╕реЗ рд╕рд░рдгреА рдХреА рд╢реБрд░реБрдЖрдд рддрдХ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╕рд░рдгреА рдХрд╛ x- рдЕрдХреНрд╖ рдкрд╛рда рдХреА рддрд░рд╣ рд╣реА рдмрд╛рдПрдВ рд╕реЗ рджрд╛рдПрдВ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╣рдореЗрдВ рд╕реВрдЯ рдХрд░рддрд╛ рд╣реИред


рдЗрд╕ рдЪрдХреНрд░ рдореЗрдВ, рд╣рдо рдорд╛рдирдЪрд┐рддреНрд░ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд▓ рдХреЛ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рдВрдЪрддреЗ рд╣реИрдВ рдХрд┐ рдЙрд╕рдореЗрдВ рдХреНрдпрд╛ рд╣реИред рдЕрдм рддрдХ, рд╣рдордиреЗ рдХреЗрд╡рд▓ рдПрдХ рдирдИ рдЯрд╛рдЗрд▓ () рдХреЗ рд░реВрдк рдореЗрдВ рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХреЛ рдЖрд░рдВрднреАрдХреГрдд рдХрд┐рдпрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдордиреЗ рдХрдорд░реЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдЯ рджрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рд░ рдХреЛрдИ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп рдПрдХ рддреНрд░реБрдЯрд┐ рд▓реМрдЯрд╛рдПрдЧрд╛ред рдЗрд╕рд▓рд┐рдП рдкрд╣рд▓реЗ рд╣рдореЗрдВ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕ рд╕реЗрд▓ рдореЗрдВ рдХреБрдЫ рд╣реИ, рдФрд░ рд╣рдо рдРрд╕рд╛ рд╕реЗрд▓ рдХреЛ рд╢реВрдиреНрдп рдХреА рдЬрд╛рдБрдЪ рдХрд░рдХреЗ рдХрд░рддреЗ рд╣реИрдВред рдпрджрд┐ рдпрд╣ рдЕрд╢рдХреНрдд рдирд╣реАрдВ рд╣реИ, рддреЛ рд╣рдо рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдпрд╣ рдЕрд╢рдХреНрдд рд╣реИ, рддреЛ рдЕрдВрджрд░ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдирдХреНрд╢реЗ рдореЗрдВ рдЦрд╛рд▓реА рд╕реНрдерд╛рди рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред


рдЗрд╕рд▓рд┐рдП, рдкреНрд░рддреНрдпреЗрдХ рдЧреИрд░-рдЦрд╛рд▓реА рд╕реЗрд▓ рдХреЗ рд▓рд┐рдП, рд╣рдо рдЗрд╕рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░рддреАрдХ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рджреАрд╡рд╛рд░реЛрдВ рдХреЛ "#" рдФрд░ "рджреНрд╡рд╛рд░рд╛ рдЗрдВрдЧрд┐рдд рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдордВрдЬрд┐рд▓реЛрдВ" рджреНрд╡рд╛рд░рд╛ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред рдФрд░ рдЬрдмрдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ рдпреЗ рджреЛ рдкреНрд░рдХрд╛рд░ рд╣реИрдВред рдмрд╛рдж рдореЗрдВ, рдЬрдм рд╣рдо рдЦрд┐рд▓рд╛рдбрд╝реА, рд░рд╛рдХреНрд╖рд╕реЛрдВ рдФрд░ рдЬрд╛рд▓ рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рд╕рдм рдХреБрдЫ рдереЛрдбрд╝рд╛ рдФрд░ рдЬрдЯрд┐рд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред


рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдореЗрдВ рд╕рд░рдгреА рдкрдВрдХреНрддрд┐ рдХреЗ рдЕрдВрдд рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдкрд░ рд▓рд╛рдЗрди рдмреНрд░реЗрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддрд╛рдХрд┐ рд╕рдорд╛рди рдПрдХреНрд╕ рд╕реНрдерд┐рддрд┐ рд╡рд╛рд▓реЗ рд╕реЗрд▓ рд╕реАрдзреЗ рдПрдХ-рджреВрд╕рд░реЗ рдХреЗ рдиреАрдЪреЗ рд╣реЛрдВред рд╣рдо рд▓реВрдк рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВрдЧреЗ рдХрд┐ рдХреНрдпрд╛ рд╕реЗрд▓ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЕрдВрддрд┐рдо рд╣реИ, рдФрд░ рдлрд┐рд░ рд╡рд┐рд╢реЗрд╖ рд╡рд░реНрдг "\ n" рдХреЗ рд╕рд╛рде рдПрдХ рдкрдВрдХреНрддрд┐ рд╡рд┐рд░рд╛рдо рдЬреЛрдбрд╝реЗрдВред


рдмрд╕ рдЗрддрдирд╛ рд╣реАред рдлрд┐рд░ рд╣рдо рд▓реВрдк рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рд╣рдо рджреГрд╢реНрдп рдореЗрдВ рдЯреЗрдХреНрд╕реНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЗрд╕ рд▓рд╛рдЗрди рдХреЛ рдЬреЛрдбрд╝ рд╕рдХреЗрдВред



рдмрдзрд╛рдИ рд╣реЛ! рдЖрдкрдиреЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреВрд░реА рдХрд░ рд▓реА рд╣реИ рдЬреЛ рдХрдорд░реЗ рдХреЛ рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рд╕реНрдХреНрд░реАрди рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред рдЕрдм рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдЗрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдореЗрдВ рд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдо рдбрдВрдЧрдСрдирдЧреЗрдВрдЯрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╕реНрдЯрд╛рд░реНрдЯ () рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЧреЗрдо рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдЬреЛ рдХреБрдЫ рднреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реЛ, рдЬрд┐рд╕рдореЗрдВ рдореИрдк рдмрдирд╛рдирд╛, рд▓реЗрдХрд┐рди рдЦрд┐рд▓рд╛рдбрд╝реА, рджреБрд╢реНрдорди рдЖрджрд┐ рдХреЛ рд╕реЗрдЯ рдХрд░рдирд╛ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЗрд╕ рдЕрдиреНрдп рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╕реНрдЯрд╛рд░реНрдЯ () рдлрд╝рдВрдХреНрд╢рди рд╣реЛрдЧрд╛, рдФрд░ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рд╣рдорд╛рд░реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдЧрд╛ред рдбрдирдЬреЗрдирдЧреЗрдВрдЯрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдПрдХ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдлрдВрдХреНрд╢рди рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдлрд╝рд░реНрд╕реНрдЯреНрд░реВрдо рдФрд░ рдбреНрд░реЙрдлрд╝реНрдЯ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред рдЖрд░рдВрднрд┐рдХ рд░реВрдк рд╕реЗ рдХрд╛рд▓рдХреЛрдард░реА рдкреАрдврд╝реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд░ рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдПрдХ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬреЛ рдкреАрдврд╝реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рдЗрд╕реЗ рдЕрдиреНрдп рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реЗ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗредрдЕрднреА рдХреЗ рд▓рд┐рдП, рд╡рд╣ рдХреЗрд╡рд▓ FirstRoom () рдлрд╝рдВрдХреНрд╢рди, рдФрд░ рдлрд┐рд░ DrawMap () рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░реЗрдЧреА, рдЗрд╕реЗ рдПрдХ рд╕рд╣реА рдорд╛рди рджреЗрдЧреА рддрд╛рдХрд┐ рд╡рд╣ рдПрдХ ASCII рдирдХреНрд╢рд╛ рдЦреАрдВрдЪ рд▓реЗред рдУрд╣, рдпрд╛ рдирд╣реАрдВ, рдпрд╣ рдФрд░ рднреА рдмреЗрд╣рддрд░ рд╣реИ - рдЖрдЗрдП рдПрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдЪрд░ isASCII рдмрдирд╛рдПрдВ, рдЬрд┐рд╕реЗ рдЗрдВрд╕реНрдкреЗрдХреНрдЯрд░ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдмрд╕ рдЗрд╕ рдЪрд░ рдХреЛ рдкрд╛рд╕ рдХрд░реЗрдВред рдареАрдХред


рддреЛ, рдЕрдм рдЪрд▓рд┐рдП рдПрдХ GameManager рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рддреЗ рд╣реИрдВред рдпрд╣ рдмрд╣реБрдд рд╣реА рд▓рд┐рдкрд┐ рд╣реЛрдЧреА рдЬреЛ рдЦреЗрд▓ рдХреЗ рд╕рднреА рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рддрддреНрд╡реЛрдВ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдирдХреНрд╢рд╛ рдФрд░ рдЪрд╛рд▓реЗрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдгред рдЖрдЗрдП рдЗрд╕рдореЗрдВ рдЕрдкрдбреЗрдЯ () рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╣рдЯрд╛ рджреЗрдВ, рдбрдВрдЧрдСрдирдЧреЗрдВрд╕рд░ рдЯрд╛рдЗрдк рдХреЗ рдПрдХ рд╡реЗрд░рд┐рдПрдмрд▓ рдХреЛ рдбрдВрдЧрдСрдирдЧреЗрдВрдиреЗрдЯрд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рд╕реНрдЯрд╛рд░реНрдЯ () рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдЗрд╕ рд╡реЗрд░рд┐рдПрдмрд▓ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рдПрдВред


рдЙрд╕рдХреЗ рдмрд╛рдж, рд╣рдо рдмрд╕ рдЙрд╕ рдХреНрд░рдо рдореЗрдВ рдкреНрд░рд╛рд░рдВрднрдХрд░реНрддрд╛ () рдФрд░ GenerateDungeon () рдХреЛ рдХрд╛рд▓рдХреЛрдард░реА рд╕реЗ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ ред рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ - рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рдЪрд░ рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣реА рдЙрдирдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдирд┐рд░реНрдорд╛рдг рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред


рдЗрд╕ рднрд╛рдЧ рдХреЗ рд╕рд╛рде рдХреЛрдб рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИред рд╣рдореЗрдВ рдкрджрд╛рдиреБрдХреНрд░рдо рдкреИрдирд▓ рдореЗрдВ рдПрдХ рдЦрд╛рд▓реА рдЧреЗрдо рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрд╕рдХрд╛ рдирд╛рдо рдмрджрд▓рдХрд░ GameManager рдХрд░реЗрдВ рдФрд░ GameManager рдФрд░ DungeonGenerator рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЗрд╕рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХрд░реЗрдВред рдФрд░ рдлрд┐рд░ рдирд┐рд░реАрдХреНрд╖рдХ рдореЗрдВ рдХрд╛рд▓рдХреЛрдард░реА рдЬрдирд░реЗрдЯрд░ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рдЖрдк рдЬрдирд░реЗрдЯрд░ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рдпреЛрдЬрдирд╛рдУрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдореИрдВ рдЗрд╕ рдкрд░ рдмрд╕ рдЧрдпрд╛:


рдЕрдм рдмрд╕ рдкреНрд▓реЗ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рдЬрд╛рджреВ рджреЗрдЦреЗрдВ! рдЖрдкрдХреЛ рдЧреЗрдо рд╕реНрдХреНрд░реАрди рдкрд░ рдХреБрдЫ рд╕рдорд╛рди рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:


рдмрдзрд╛рдИ рд╣реЛ, рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдХрдорд░рд╛ рд╣реИ!

рдореИрдВ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рд╣рдо рдЦрд┐рд▓рд╛рдбрд╝реА рдХреЗ рдЪрд░рд┐рддреНрд░ рдХреЛ рд╡рд╣рд╛рдВ рд░рдЦреЗрдВ рдФрд░ рдЙрд╕реЗ рдЖрдЧреЗ рдмрдврд╝рд╛рдПрдВ, рд▓реЗрдХрд┐рди рдкреЛрд╕реНрдЯ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд╛рдлреА рд▓рдВрдмреА рдереАред рдЗрд╕рд▓рд┐рдП, рдЕрдЧрд▓реЗ рднрд╛рдЧ рдореЗрдВ, рд╣рдо рдмрд╛рдХреА рдХрд╛рд▓рдХреЛрдард░реА рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рд╕реАрдзреЗ рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рд╣рдо рдЗрд╕рдореЗрдВ рдЦрд┐рд▓рд╛рдбрд╝реА рдХреЛ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рд╕рд┐рдЦрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдореВрд▓ рд▓реЗрдЦ рдХреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЖрдкрдХреЛ рдЬреЛ рдкрд╕рдВрдж рд╣реИ рдЙрд╕реЗ рд╡реЛрдЯ рдХрд░реЗрдВред

MapManager.cs:

using System.Collections;
using System; // So the script can use the serialization commands
using System.Collections.Generic;
using UnityEngine;

public class MapManager {
    public static Tile[,] map; // the 2-dimensional map with the information for all the tiles
}

[Serializable] // Makes the class serializable so it can be saved out to a file
public class Tile { // Holds all the information for each tile on the map
    public int xPosition; // the position on the x axis
    public int yPosition; // the position on the y axis
    [NonSerialized]
    public GameObject baseObject; // the map game object attached to that position: a floor, a wall, etc.
    public string type; // The type of the tile, if it is wall, floor, etc
}

[Serializable]
public class Position { //A class that saves the position of any cell
    public int x;
    public int y;
}

[Serializable]
public class Wall { // A class for saving the wall information, for the dungeon generation algorithm
    public List<Position> positions;
    public string direction;
    public int length;
    public bool hasFeature = false;
}

[Serializable]
public class Feature { // A class for saving the feature (corridor or room) information, for the dungeon generation algorithm
    public List<Position> positions;
    public Wall[] walls;
    public string type;
    public int width;
    public int height;
}

DungeonGenerator.cs:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class DungeonGenerator : MonoBehaviour
{
    public int mapWidth;
    public int mapHeight;

    public int widthMinRoom;
    public int widthMaxRoom;
    public int heightMinRoom;
    public int heightMaxRoom;

    public int maxCorridorLength;
    public int maxFeatures;

    public bool isASCII;

    public void InitializeDungeon() {
        MapManager.map = new Tile[mapWidth, mapHeight];
    }

    public void GenerateDungeon() {
        FirstRoom();
        DrawMap(isASCII);
    }

    void FirstRoom() {
        Feature room = new Feature();
        room.positions = new List<Position>();

        int roomWidth = Random.Range(widthMinRoom, widthMaxRoom);
        int roomHeight = Random.Range(heightMinRoom, heightMaxRoom);

        int xStartingPoint = mapWidth / 2;
        int yStartingPoint = mapHeight / 2;

        xStartingPoint -= Random.Range(0, roomWidth);
        yStartingPoint -= Random.Range(0, roomHeight);

        room.walls = new Wall[4];

        for (int i = 0; i < room.walls.Length; i++) {
            room.walls[i] = new Wall();
            room.walls[i].positions = new List<Position>();
            room.walls[i].length = 0;

            switch (i) {
                case 0:
                    room.walls[i].direction = "South";
                    break;
                case 1:
                    room.walls[i].direction = "North";
                    break;
                case 2:
                    room.walls[i].direction = "West";
                    break;
                case 3:
                    room.walls[i].direction = "East";
                    break;
            }
        }

        for (int y = 0; y < roomHeight; y++) {
            for (int x = 0; x < roomWidth; x++) {
                Position position = new Position();
                position.x = xStartingPoint + x;
                position.y = yStartingPoint + y;

                room.positions.Add(position);

                MapManager.map[position.x, position.y] = new Tile();
                MapManager.map[position.x, position.y].xPosition = position.x;
                MapManager.map[position.x, position.y].yPosition = position.y;

                if (y == 0) {
                    room.walls[0].positions.Add(position);
                    room.walls[0].length++;
                    MapManager.map[position.x, position.y].type = "Wall";
                }
                else if (y == (roomHeight - 1)) {
                    room.walls[1].positions.Add(position);
                    room.walls[1].length++;
                    MapManager.map[position.x, position.y].type = "Wall";
                }
                else if (x == 0) {
                    room.walls[2].positions.Add(position);
                    room.walls[2].length++;
                    MapManager.map[position.x, position.y].type = "Wall";
                }
                else if (x == (roomWidth - 1)) {
                    room.walls[3].positions.Add(position);
                    room.walls[3].length++;
                    MapManager.map[position.x, position.y].type = "Wall";
                }
                else {
                    MapManager.map[position.x, position.y].type = "Floor";
                }
            }
        }

        room.width = roomWidth;
        room.height = roomHeight;
        room.type = "Room";
    }

    void DrawMap(bool isASCII) {
        if (isASCII) {
            Text screen = GameObject.Find("ASCIITest").GetComponent<Text>();

            string asciiMap = "";

            for (int y = (mapHeight - 1); y >= 0; y--) {
                for (int x = 0; x < mapWidth; x++) {
                    if (MapManager.map[x,y] != null) {
                        switch (MapManager.map[x, y].type) {
                            case "Wall":
                                asciiMap += "#";
                                break;
                            case "Floor":
                                asciiMap += ".";
                                break;
                        }
                    } else {
                        asciiMap += " ";
                    }

                    if (x == (mapWidth - 1)) {
                        asciiMap += "\n";
                    }
                }
            }

            screen.text = asciiMap;
        }
    }
}

GameManager.cs:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class GameManager : MonoBehaviour
{
    DungeonGenerator dungeonGenerator;
    
    void Start() {
        dungeonGenerator = GetComponent<DungeonGenerator>();

        dungeonGenerator.InitializeDungeon();
        dungeonGenerator.GenerateDungeon();
    }
}

All Articles