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




рдпрд╣ рд╕рдм рдХреИрд╕реЗ рд╢реБрд░реВ рд╣реБрдЖ?
рдРрд╕рд╛ рд╣реБрдЖ рдХрд┐ рдПрдХ рдирдИ рдиреМрдХрд░реА рдореЗрдВ, рдХреБрдЫ рдХрд╛рд░рдгреЛрдВ рд╕реЗ, рдореБрдЭреЗ рдорд╢реАрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЧреЗрдо рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рдкрдбрд╝рд╛ред рдореИрдВрдиреЗ рдПрдХ рдкреНрд░рддрд┐рднрд╛рд╢рд╛рд▓реА рдбрд┐рдЬрд╛рдЗрдирд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкреАрд╕реА (рдПрдХреНрд╕рдмреЙрдХреНрд╕, рдЖрджрд┐) рдХреЗ рд▓рд┐рдП рдЕрдиреНрдп рдЧреЗрдо (рдореЛрдмрд╛рдЗрд▓ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░) рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рдЗрд╕рд▓рд┐рдП рд╣рдордиреЗ рдЙрд╕реА рд╕рдордп рдХреБрдЫ рджрд┐рд▓рдЪрд╕реНрдк рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рд╕рд╛рде рд╣реА рд╕рд╛рде рдпрд╣ рдЗрддрдирд╛ рдЬрдЯрд┐рд▓ рднреА рдирд╣реАрдВ рдерд╛ рдХрд┐ рд╣рдорд╛рд░рд╛ рд╡рд┐рдХрд╛рд╕ 4-5-6 рдорд╣реАрдиреЛрдВ рддрдХ рдирд╣реАрдВ рдЪрд▓рддрд╛ред рди рддреЛ рдореИрдВ рдФрд░ рди рд╣реА рд╡рд╣ рдЗрддрдиреА рд▓рдВрдмреА рдЫрд▓рд╛рдВрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдереЗред
рдорд╛рдЗрдирд╕реНрд╡реАрдкрд░ рд╡рд╣ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдерд╛ рдЬрд┐рд╕реЗ рд╣рдо рд╢реБрд░реВ рд╕реЗ рд╣реА рдЙрдард╛рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗред
рдпрд╣рд╛рдБ рд╡рд╣реА рд╣реИ рдЬреЛ рд╣рдо рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ, рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рдмрд╣реБрдд рдЦреБрд╢реА рд╣реИ рдХрд┐ рд╣рдордиреЗ рд╕рдордп рдкрд░ рдЕрдкрдиреА рд╕реЗрдирд╛рдУрдВ рдХрд╛ рд╕рд╣реА рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд┐рдпрд╛:
рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВ рдПрдХ рдРрд╕рд╛ рдЦреЗрд▓ рдирд╣реАрдВ рд▓реЗрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдЬреЛ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рдерд╛ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЕрднреА рддрдХ рд╕реНрдкреНрд░рд╛рдЗрдЯрд┐рдЯ рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдмреАрдЪ рдореЗрдВ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдФрд░ рдпрд╣ рд╕рдордЭрддрд╛ рдерд╛ рдХрд┐ рдХреЗрд╡рд▓ рд╕реНрдЯрдВрдк рдбреЗрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреБрдЫ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред
StackOverflow рдореЗрдВ рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ Cocos2D рдХреЛ рд▓реЗрдЦрдХ (LearnCocos2D) рджреНрд╡рд╛рд░рд╛ рдмрд╣реБрдд рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ Apple рдХреА рдкреНрд░рд╕реНрддреБрддрд┐ рдФрд░
рд╕рд╛рд╣рд╕рд┐рдХ рдЦреЗрд▓ рдХреЗ рдмрд╛рдж рд╕реНрдкреНрд░рд┐рдЯрдХрд┐рдЯ рдЖрдЬрдорд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рд╕рдЪреНрдЪрд╛рдИ рдиреЗ рдореБрдЭреЗ рдЗрд╕ рддрдереНрдп рд╕реЗ рджреБрдЦреА рдХрд┐рдпрд╛ рдХрд┐ Xcode рдореЗрдВ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдХрдг рджреГрд╢реНрдп рд╣реИ, рдФрд░ рдореИрдВ Xcode рдХреЛ рдХрдо рдмрд╛рд░ рдЦреЛрд▓рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдЙрдкрдХрд░рдг
рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЪрд░рдгреЛрдВ рдореЗрдВ, Xcode + AppCode, рдлрд╝реЛрдЯреЛрд╢реЙрдк рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ред
рддрдм рдХреЗрд╡рд▓ AppCode рдФрд░ рдлрд╝реЛрдЯреЛрд╢реЙрдкред
рд╕реНрдкреНрд░рд╛рдЗрдЯрдХрд┐рдЯ рдХреЛ
рдпрд╣рд╛рдБ рдпрд╛
рдпрд╣рд╛рдБ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛
рд╣реИ ред
рдбрд┐рдЬрд╝рд╛рдЗрди (рд░реЗрдЯрд┐рдирд╛, рд░реЗрдЯрд┐рдирд╛ рдирд╣реАрдВ, 4 рдФрд░ 5 iPhone)
рдореИрдВ рддреБрд░рдВрдд рдЗрд╕ рддрдереНрдп рдХреЗ рд▓рд┐рдП рдерд╛ рдХрд┐ рд╣рдордиреЗ 4 рдЖрдИрдлрд╝реЛрди рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ рдФрд░ рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рдПрдХ рд╕рдореВрд╣ рдХреЗ рд╕рд╛рде рднрд╛рдк рд╕реНрдирд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛, рдЬреЛ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЖрд╡реЗрджрди рд╕реНрдерд╛рдиреАрдпрдХрд░рдг рдХреА рдЦрд╝рд╛рд╕рд┐рдпрдд рдХреЗ рдХрд╛рд░рдг рдкрд░реНрдпрд╛рдкреНрдд рдерд╛ред рдПрдХ рдмрд╛рд░ рдЬрдм рдЙрдиреНрд╣реЛрдВрдиреЗ 4 рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдФрд░ рд╡рд╣ рд╕рдм рдХрдо рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рд░реЗрдЯрд┐рдирд╛ рдХреЗ рдиреАрдЪреЗ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рдорд╣рд╛рди!
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдБ рд╣рдорд╛рд░рд╛ рдкрд╣рд▓рд╛ рд╡рд┐рдХрд▓реНрдк рдХреНрдпрд╛ рд╣реИ:
рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдЖрдЧреЗ рд╣рдордиреЗ рдРрд╕реЗ рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрдЫрд╛:
- рдХреНрдпрд╛ рдЧреЗрдо рд╕реНрдХреНрд░реАрди рдкрд░ рд╡рд┐рдЬреНрдЮрд╛рдкрди рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЦреЗрд▓ рдореИрджрд╛рди рдХреЛ рдХрд╡рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?
- рдкреГрд╖реНрдарднреВрдорд┐ рдЫрд╡рд┐ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╕рдордп рд╡рд┐рдЬреНрдЮрд╛рдкрди рдЗрдХрд╛рдИ рдХреЗ рдЖрдХрд╛рд░ рдФрд░ рд╕реНрдерд┐рддрд┐ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП?
- рдХреНрдпрд╛ рдореЗрдиреНрдпреВ рдмрдЯрди рдпрд╛ рдмреИрдХ рдмрдЯрди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП?
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЬреАрддрдиреЗ рдпрд╛ рд╣рд╛рд░рдиреЗ рдХреЗ рдмрд╛рдж рдХреНрдпрд╛ рджрд┐рдЦрд╛рдирд╛ рд╣реИ?
- рдЖрджрд┐
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддреЗ рдереЗ:
рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдбрд┐рдЬрд╛рдЗрдирд░ рд╕реНрд╡рддрдВрддреНрд░рддрд╛ рджреЗрдВ, рд▓реЗрдХрд┐рди рдирд┐рдпрдВрддреНрд░рдгред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЬрд┐рд╕ рдлреЙрдиреНрдЯ рдХреЛ рд╡рд╣ рд╕рдордп рдмрд┐рддрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рддрд╛ рдерд╛ рдФрд░ рдХреНрд╖реЗрддреНрд░ рдкрд░ рдмрдореЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдорд╛рдирдХ рд╕реВрдЪреА рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рджреЗрдЦрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ, рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЕрднреА рднреА _ font_ рдлрд╝реЙрдиреНрдЯ рдЦреЛрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрд╕ рддрдереНрдп рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдХрд┐ рд╢рд┐рд▓рд╛рд▓реЗрдЦ рдХреЗ рдкреАрдЫреЗ рдЙрдирдХреЗ рдмреАрдЪ рдХреБрдЫ рджреВрд░реА рдХреЗ рд╕рд╛рде 4 рдЧреНрд░реЗ рдЕрдВрдХреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдкреГрд╖реНрдарднреВрдорд┐ рдЫрд╡рд┐ рд╣реИ, рдФрд░ рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рд╣рдореЗрдВ рдЗрд╕ рддрдереНрдп рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рдХрд┐ "рд╕реЗ рд╢рд┐рд▓рд╛рд▓реЗрдЦ рдмрджрд▓рддреЗ рд╕рдордп" 111 "рд╕реЗ" 888 "рдкрд╛рда рд▓реЗрдмрд▓ рдХреА рдЪреМрдбрд╝рд╛рдИ (UILabel) рдмрджрд▓ рдЧрдИ рд╣реИ рдФрд░ рдкрд╛рддреНрд░реЛрдВ рдХреЗ рдмреАрдЪ рдХреА рджреВрд░реА рдмрджрд▓ рдЧрдИ рд╣реИ, рдЬреЛ рд╣рдореЗрдВ рд╕реВрдЯ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ ... рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╡рд╛рдВрдЫрд┐рдд рдлрд╝реЙрдиреНрдЯ рдорд┐рд▓рд╛ рдерд╛, рднрдЧрд╡рд╛рди рдХрд╛ рд╢реБрдХреНрд░ рд╣реИ, рдЕрдиреНрдпрдерд╛ 10 рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдмрдирд╛рдпрд╛, рддреИрдирд╛рдд рдФрд░ рдЕрджреНрдпрддрди рдХрд╛рдЙрдВрдЯрд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдлрд╝реЙрдиреНрдЯ, рд▓реЗрдХрд┐рди рдЕрдлрд╕реЛрд╕, рдЗрддрдирд╛ рд╕рд░рд▓ рдирд╣реАрдВ рд╣реИ ("рд╡рд┐рдХрд╛рд╕" рдЦрдВрдб рдореЗрдВ рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ рдЗрд╕ рдлрд╝реЙрдиреНрдЯ рдХреЗ рд╕рд╛рде рдФрд░ рдХреНрдпрд╛ рджрд┐рд▓рдЪрд╕реНрдк рдерд╛)ред
рд╕реНрдкреНрд░рд╛рдЗрдЯреНрд╕ рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдереАред рд╣рдо рд╕рднреА рдиреЗ рдЗрд╕ рд╕реНрд╡рд┐рдЪ рдХрд╛ рдЖрдирдВрдж рд▓рд┐рдпрд╛:


рдбрд┐рдЬрд╛рдЗрдирд░ рдиреЗ рддреАрди рд╕рдмрд╕реЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдХрд╛рдо рдХрд┐рдпрд╛:
- рд╣реЛрдо рд╕реНрдХреНрд░реАрди рдкреГрд╖реНрдарднреВрдорд┐ рдЫрд╡рд┐
- рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕реНрдХреНрд░реАрди рдкреГрд╖реНрдарднреВрдорд┐ рдЫрд╡рд┐
- рдмрдо рд╡рд┐рд╕реНрдлреЛрдЯ рдПрдиреАрдореЗрд╢рди
рдмрдо рд╡рд┐рд╕реНрдлреЛрдЯ рдПрдиреАрдореЗрд╢рди рдореЗрдВ рд▓рдЧрднрдЧ 40 рдлреНрд░реЗрдо рд╣реЛрддреЗ рд╣реИрдВ (рдиреАрдЪреЗ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдореЗрдВ рджреЛ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡рд┐рд╕реНрдлреЛрдЯ рд╣реЛрддреЗ рд╣реИрдВ)ред

рдбрд┐рдЬрд╛рдЗрдирд░ рдФрд░ рдореБрдЭреЗ рдПрдХ рдФрд░ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ - рд╕реНрдерд┐рддрд┐ рддрддреНрд╡реЛрдВ рдФрд░ рд╕реНрдерд┐рддрд┐ рдХрд╛ рд╕рдВрдХреЗрддред рдЙрд╕рдХреЗ рд▓рд┐рдП, рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдорд╣рддреНрд╡рд╣реАрди рд╣реИ, рдмрд╛рдИрдВ рдУрд░ рдПрдХ рдкрд┐рдХреНрд╕реЗрд▓, рджрд╛рдИрдВ рдУрд░ рдПрдХ рдкрд┐рдХреНрд╕реЗрд▓ - рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ ... рд╡рд╣ рд╢рд╛рд╕рдХреЛрдВ рдХреЗ рдмрд┐рдирд╛ рд╕рдм рдХреБрдЫ рдЦреАрдВрдЪрддрд╛ рд╣реИ, рдРрд╕реЗ рд░рдЪрдирд╛рддреНрдордХ рд╡реНрдпрдХреНрддрд┐ :)
рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдиреЗ рдореБрдЭреЗ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдХрд┐рд╕реА рддрд░рд╣ рдЗрд╕реЗ рд╕реНрдерд╛рди рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдореБрдЭреЗ рдХрдо рд╕реЗ рдХрдо рдХреБрдЫ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ / рдЖрдХрд╛рд░реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдпрд╣ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдирд┐рдХрд▓рд╛:

рдпрд╣ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдХреБрдЫ рдЧрд▓рдд рд╣реИ, рдРрд╕реА рднрд╛рд╡рдирд╛ рдореБрдЭреЗ рдирд╣реАрдВ рдЫреЛрдбрд╝рддреА рд╣реИред
рдЖрд╡рд╛рдЬрд╝
рдбрд┐рдЬрд╛рдЗрдирд░ рдХреЛ рдзреНрд╡рдирд┐рдпреЛрдВ рд╕реЗ рднреА рдирд┐рдкрдЯрдирд╛ рдкрдбрд╝рд╛ред рд╣рдореЗрдВ рдПрдХ рдЙрдкрдпреБрдХреНрдд рд╕рд╛рдЗрдЯ рдорд┐рд▓реА
www.freesound.org рдФрд░ рдХреБрдЫ рдзреНрд╡рдирд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ (рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ - рдХреНрд░реЙрдкрд┐рдВрдЧ, рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ:
- рд╡рд┐рд╕реНрдлреЛрдЯ
- рдЦреБрджрд╛рдИ
- рдХрд┐рд╕реА рднреА "рдмрдЯрди" рдЖрдЗрдЯрдо рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдирд╛
рдбрд┐рдЬрд╝рд╛рдЗрди
рдпрд╣ рд╕рдм рд╕реНрдЯреЛрд░реАрдмреЛрд░реНрдб рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реБрдЖ:

рдпрд╣ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛:

рдбрд┐рдЬрд╛рдЗрди, рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ, рдбрд┐рдЬрд╛рдЗрди ... рдкреВрд░рд╛ рдХрдЪрд░рд╛ред рдЖрдк рдПрдХ рд╡рд╛рдпрд░рдлреНрд░реЗрдо рдмрдирд╛рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЖрдк рдЗрд╕реЗ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛, рддрд░реНрдХ, рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдЖрджрд┐ рдХреЛ рдЪрд╛рд▓реВ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рд╡рд┐рдХрд╛рд╕ рдХреА рд╢реБрд░реБрдЖрдд рд╕реЗ рдЕрдВрдд рддрдХ, рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕рдВрд░рдЪрдирд╛ рдирд╣реАрдВ рдмрджрд▓реА рд╣реИ, рд▓реЗрдХрд┐рди рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рдХреА рд╕рд╣рднрд╛рдЧрд┐рддрд╛ рдпреЛрдЬрдирд╛рдПрдВ рдФрд░ рддрд░реНрдХ рдХрдИ рдмрд╛рд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред
рдЪрд▓рд┐рдП рдореБрдЦреНрдп рд╕реНрдХреНрд░реАрди рд╕реЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рджреЛ рдмрдЯрди, рдЯреИрдкреВ рдЧреЗрдо рд╕реНрдХреНрд░реАрди рдФрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдЬрд╛рддреЗ рд╣реИрдВред рдбреНрд░рдо рд░реЛрд▓ ... рд╕рд╛рдЙрдВрдб рдЕрднреА рднреА рдЯреИрдк рдкрд░ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рдпрд╛ рддреЛ SystemSound рдпрд╛ AVAudioPlayer (рдпрд╛ рдХреБрдЫ рдФрд░) рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдкреНрд░реАрд▓реЛрдб рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдХреБрдЫ рдЕрдиреНрдп рд╡рд░реНрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рд╕рднреА рдзреНрд╡рдирд┐рдпреЛрдВ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реЛрдЧрд╛ред рдФрд░ рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╣реБрдЖ - BGAudioPreloaderред
@interface BGResourcePreloader : NSObject <AVAudioPlayerDelegate> + (instancetype)shared; // - (void)preloadAudioResource:(NSString *)name; // name // type // nil - - (AVAudioPlayer *)playerFromGameConfigForResource:(NSString *)name; // name // type. - (AVAudioPlayer *)playerForResource:(NSString *)name; @end
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:
рдореБрдЦреНрдп рд╕реНрдХреНрд░реАрди рдкрд░ рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИред
рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕реНрдХреНрд░реАрди рдкрд░ рдЬрд╛рдПрдВред
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рддреБрд░рдВрдд рдПрдХ UISegmentedControl (рд╕рдорд╛рди) рдФрд░ рдПрдХ рд╕реНрд╡рд┐рдЪ (UIButton) рд╣реИред
рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ UISegmentedControl рдХреЗ рд╕рд╛рде рдПрдХ рдмрд╛рдЗрдХ рд▓рд┐рдЦрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВрдиреЗ рдмрд╣реБрдд рдзреНрдпрд╛рди рд╕реЗ StackOverflow рдХреЛ рдЕрдлрд╡рд╛рд╣ рдмрддрд╛рдпрд╛ рдФрд░ рдорд╣рд╕реВрд╕ рдХрд┐рдпрд╛ рдХрд┐ рдпрд╣ рдмреЗрд╣рддрд░ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдм рдХреЗ рдмрд╛рдж рдПрдХ рдмрд╛рдЗрдХ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП ... рдХреБрдЫ рднреА рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ (рд╕реНрд╡рд┐рдЪ рдХрд╛ рддрдВрддреНрд░ рдРрд╕рд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдкрд░ рдЕрдкрдиреА рдЙрдВрдЧрд▓рд┐рдпрд╛рдВ рднреА рд╣рд┐рд▓рд╛рдПрдВ рд╕рдХреНрд░рд┐рдп рд╡рд┐рдХрд▓реНрдк рдмрджрд▓рддрд╛ рд╣реИ рдФрд░ рди рдХреЗрд╡рд▓ рдЙрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЖрдкрдиреЗ рдЕрдкрдиреА рдЙрдВрдЧрд▓реА рдЙрдард╛рдИ рдереА, рдмрд▓реНрдХрд┐ рдпрд╣ рднреА рдХрд┐ рдЖрдкрдХреА рдЙрдВрдЧрд▓реА рдЕрдм рдХрд╣рд╛рдВ рд╣реИ)ред
рдореБрдЦреНрдп рд╕реНрд╡рд┐рдЪ рд░рд╛рдЬреНрдп рдкрд░рд┐рд╡рд░реНрддрди рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ:
#pragma mark - Touches - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { [self updateSegmentedControlUsingTouches:touches]; } - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event { [self updateSegmentedControlUsingTouches:touches]; } - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event { [self updateSegmentedControlUsingTouches:touches]; } #pragma mark - Private method - (void)updateSegmentedControlUsingTouches:(NSSet *)touches { UITouch *touch = [touches anyObject]; CGPoint touchPoint = [touch locationInView:self]; for (NSUInteger i = 0; i < _selectedSegments.count; i++) { CGRect rect = ((UIImageView *) _selectedSegments[i]).frame; if (CGRectContainsPoint(rect, touchPoint)) { if (self.selectedSegmentIndex != i) { // - // [[[BGResourcePreloader shared] playerFromGameConfigForResource:@"buttonTap.mp3"] play]; } self.selectedSegmentIndex = i; break; } } [_target performSelector:_action withObject:@(_selectedSegmentIndex)]; }
рдХреЛрдИ рд╕рд╡рд╛рд▓ рдирд╣реАрдВ рд╣реИред
рд╣рдорд╛рд░рд╛ рдкрд╕рдВрджреАрджрд╛ рддрддреНрд╡ рд╕реНрд╡рд┐рдЪ рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рдПрдХ рдирд┐рдпрдорд┐рдд рдмрдЯрди рдХреА рддрд░рд╣ рдХрд╛рдо рдХрд░рддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдиреЗ рдореБрдЭреЗ рд▓рдЧрд╛рддрд╛рд░ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╕рдВрд╡реЗрджрдирд╛рдПрдВ рд╕рдорд╛рди рдирд╣реАрдВ рдереАрдВ рдФрд░ рдореИрдВ рдпрд╣ рдорд╣рд╕реВрд╕ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдерд╛ рдФрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХреА рддрд░рд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдореБрдЭреЗ рд░рд╛рдЬреНрдпреЛрдВ рдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрди рдХреЛрдб рдкреНрд░рд╛рдкреНрдд рд╣реБрдЖ:
#pragma mark - Touches - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { // } - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event { BGLog(); [self updateActiveRegionUsingTouches:touches]; if ((self.isOn && self.activeRegion == BGUISwitchLeftRegion) || (!self.isOn && self.activeRegion == BGUISwitchRightRegion)) { [super touchesMoved:touches withEvent:event]; [self playSwitchSound]; [_target performSelector:_action withObject:self]; self.on = !self.on; } } - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event { BGLog(); [self updateActiveRegionUsingTouches:touches]; if ((self.isOn && self.activeRegion == BGUISwitchLeftRegion) || (!self.isOn && self.activeRegion == BGUISwitchRightRegion)) { [super touchesEnded:touches withEvent:event]; [self playSwitchSound]; [_target performSelector:_action withObject:self]; self.on = !self.on; } } - (void)updateActiveRegionUsingTouches:(NSSet *)touches { UITouch *touch = [touches anyObject]; CGPoint touchPoint = [touch locationInView:self]; CGRect leftRect = CGRectMake(0, 0, self.bounds.size.width / 2, self.bounds.size.height); CGRect rightRect = CGRectMake(self.bounds.size.width / 2, 0, self.bounds.size.width / 2, self.bounds.size.height); if (CGRectContainsPoint(leftRect, touchPoint)) { _activeRegion = BGUISwitchLeftRegion; } else if (CGRectContainsPoint(rightRect, touchPoint)) { _activeRegion = BGUISwitchRightRegion; } else { _activeRegion = BGUISwitchNoneRegion; } }
рд╣рд░ рдмрд╛рд░ рдЬрдм рд╕реНрдерд┐рддрд┐ рдмрджрд▓рддреА рд╣реИ, рддреЛ рд╣рдо рд╕реЗрдЯрд┐рдВрдЧ рдкреНрд░рдмрдВрдзрдХ рдореЗрдВ рдирдП рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдорд╛рди рдХреЛ рд╕рд╣реЗрдЬрддреЗ рд╣реИрдВред рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкреНрд░рдмрдВрдзрдХ (рдЬреЛ рдПрдХ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд╣реИ) рдЪрдордХрджрд╛рд░ рдирд┐рдХрд▓рд╛, рдлрд┐рд░ рдореИрдВрдиреЗ рдПрдХ рдирдпрд╛ рд▓рд┐рдЦрд╛, рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рдЗрд╕реЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред
рдпрд╣рд╛рдБ рдирдИ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкреНрд░рдмрдВрдзрдХ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдХреЛрдб рд╣реИ:
static NSString* const kBGSettingManagerUserDefaultsStoreKeyForMainSettings = @"kBGSettingsManagerUserDefaultsStoreKeyForMainSettings"; static NSString* const kBGSettingManagerUserDefaultsStoreKeyForDefaultSettings = @"kBGSettingsManagerUserDefaultsStoreKeyForDefaultSettings";
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рд╛рде рд╣рд┐рд╕реНрд╕рд╛:
рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ рдФрд░, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдмрд╛рдж рдореЗрдВ рдкрд╛рдпрд╛ рдФрд░ рд╕рдордЭрд╛, рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ:
рдХрдВрд╕реЛрд▓ рдореЗрдВ рд╣рдореЗрдВ рдирд┐рдореНрди рдЖрдЙрдЯрдкреБрдЯ рдорд┐рд▓рддреЗ рд╣реИрдВ:
2014-04-30 23:45:03.842 BGUtilityLibrary[13730:70b] { user = { info = { age = 22; contacts = { phone = "+7 920 930 87 56"; }; name = Andrew; surname = Shmig; }; }; } 2014-04-30 23:45:03.847 BGUtilityLibrary[13730:70b] { }
рдЧреЗрдо рд╕реНрдХреНрд░реАрди рдкрд░ рдЬрд╛рдПрдВред рдпрд╣ рд╕реНрдХреНрд░реАрди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореЗрд░реЗ рд▓рд┐рдП "рдЦреВрдиреА" рдмрди рдЧрдИ ... рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдмрд╣реБрдд рд╢реБрд░реБрдЖрдд рдореЗрдВ, рдЬрдм рдореИрдВрдиреЗ "рдкреНрд▓реЗ" рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд┐рдпрд╛ рдерд╛, рддреЛ рдЧреЗрдо рд╕реНрдХреНрд░реАрди рдкрд░ рдФрд░ рд╡рд╣рд╛рдБ рдПрдХ рджреГрд╢реНрдп рд╕рдВрдХреНрд░рдордг рд╣реЛ рдЧрдпрд╛ рдерд╛, рд╡реНрдпреВрдбрд╛рд▓реЙрдб рд╡рд┐рдзрд┐ рдореЗрдВ, рдПрдХ рдлрд╝реАрд▓реНрдб (SKSEN) рдЙрддреНрдкрдиреНрди рдФрд░ рднрд░рд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рджреЗрд░реА рдЗрддрдирд╛ рдмрдбрд╝рд╛ рдерд╛ рдХрд┐ рдореБрдЭреЗ рд╕рд╡рд╛рд▓ рдкреВрдЫрдирд╛ рдерд╛:
- рдкреНрд░реАрд▓реЛрдбрд┐рдВрдЧ рд╕реНрдкреНрд░рд╛рдЗрдЯ рд╕реЗ рдорджрдж рдорд┐рд▓реЗрдЧреА?
- рдПрдХ рдПрдХрд▓ SKNode рдорджрдж рдмрдирд╛рдПрдЧрд╛, рдЗрд╕рдореЗрдВ рд╕реНрдкреНрд░рд╛рдЗрдЯ рдЬреЛрдбрд╝ рджреЗрдЧрд╛, рдФрд░ рдХреЗрд╡рд▓ рддрдм SKScene рдХреЛ рдЬреЛрдбрд╝ рджреЗрдЧрд╛?
рджреЛрдиреЛрдВ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдЙрддреНрддрд░ "рдирд╣реАрдВ" рд╣реИред рдкрд╣рд▓рд╛ рд╕рд╡рд╛рд▓ рджреВрд╕рд░реЗ рдХреЗ рдмрд╛рдж рдЖрддрд╛ рд╣реИ ... рдкреВрд░реА рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ addChild: рд╡рд┐рдзрд┐ рдмреЗрд╣рдж рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИ, рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдордВрдЪ рдкрд░ рдпрдерд╛рд╕рдВрднрд╡ рдХрдо рдиреЛрдбреНрд╕ рд░рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдПред рдПрдлрдкреАрдПрд╕, рд╡реИрд╕реЗ, рдореЗрд░реЗ рд╕рд┐рдореНрдпреБрд▓реЗрдЯрд░ рдкрд░ 30 рд╕реЗ рдЕрдзрд┐рдХ рдХреЗ рд▓рд┐рдП рдКрдкрд░ рдирд╣реАрдВ рдЧрдпрд╛, рдбрд┐рд╡рд╛рдЗрд╕ рдиреЗ рд╕рд╛рдл 60 рджрд┐рдпрд╛ред
рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдкреНрд░рд╣рд╛рд░ рд╡рд┐рдзрд┐ рдФрд░ SO рдкрд░ рдкреНрд░рд╢реНрди:
1.
SKSpriteNode рдХреЛ рдмрдирд╛рд╡рдЯ рд╕реЗ рдирд┐рд░реНрдорд┐рдд рд╣реЛрдиреЗ рдореЗрдВ рдмрд╣реБрдд рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ2.
рдЕрдЬреАрдм рдмрд╛рдд рдкрд╛рд░рджрд░реНрд╢реА рд╕реАрдорд╛рдУрдВ рдХреЗ рд╕рд╛рде SKSpriteNode рдХреЗ рд╕рд╛рде рд╣реЛрддрд╛ рд╣реИ (рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХрд╛рдлреА рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдПрдХ рдмрд╣реБрдд рд╣реА рджрд┐рд▓рдЪрд╕реНрдк рдмрд┐рдВрджреБ)
рдореИрдВ рдЗрд╕ рддрдереНрдп рдкрд░ рдЖрдпрд╛ рдХрд┐ рдореИрдВрдиреЗ рдПрдХ рд╕рд┐рдВрдЧрд▓рдЯрди рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдЧреЗрдо рд╕реНрдХреНрд░реАрди рдмрдирд╛рдИ рд╣реИ, рдЬрд┐рд╕реЗ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдЖрд╡реЗрджрди рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдореИрджрд╛рди рдХреЗрд╡рд▓ рдШрд╛рд╕ рд╕реЗ рднрд░рд╛ рд╣реЛрддрд╛ рд╣реИ (рдиреАрдЪреЗ рдХреА рдкрд░рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдХрд┐рд╕реА рд╕реЗрд▓ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╣реА рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИ ... рдпрд╣ рдирд┐рд░реНрдгрдп рдкрд╣рд▓реЗ рд╕реЗ рднреА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЦрджрд╛рди рдХреЛ рдирд╣реАрдВ рдорд╛рд░рдирд╛ рдЪрд╛рд╣рд┐рдП)ред
рд╕рднреА рд╕реНрдкреНрд░рд╛рдЗрдЯ рдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдлрд┐рд░ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдлрд┐рд░ рд╕реЗ рдирд╣реАрдВ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдореЗрдореЛрд░реА рдореЗрдВ рд▓реЛрдб рдХреА рдЧрдИ рдмрдирд╛рд╡рдЯ рдХреЗ рд╕рд╛рде рд╕реНрдкреНрд░рд╛рдЗрдЯ рдмрдирд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдмрд╣реБрдд рдзреАрдореА рд╣реЛ рдЧрдИ рд╣реИ рдФрд░ рд╕рд░рд▓ рдХреЙрдкреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреЛ рджреЗрддрд╛ рд╣реИред
рдЬрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рддреЛ рдзреНрд╡рдирд┐рдпрд╛рдБ рднреА рднрд░реА рдЬрд╛рддреА рд╣реИрдВ:
рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдмрд╛рдж, рдХреНрд╖реЗрддреНрд░ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рд╕реНрдкреНрд░рд╛рдЗрдЯ рд╕реЗ рднрд░рд╛ рдФрд░ рднрд░рд╛ рд╣реБрдЖ рд╣реИ) рддрд╛рдХрд┐ рддреЗрдЬреА рд╕реЗ рд╕рдВрдХреНрд░рдордг рдХреЗ рджреМрд░рд╛рди рдХреЛрдИ рджреЗрд░реА рди рд╣реЛред
рдбрд┐рдЬрд╛рдЗрди рдЕрдиреБрднрд╛рдЧ рдореЗрдВ, рдореИрдВрдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдХрд┐ рдХрд╕реНрдЯрдо рдлреЛрдВрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЕрднреА рднреА рдордЬреЗрджрд╛рд░ рд╣реИ - рдпрд╣ рд╣реИред рди рдХреЗрд╡рд▓ рдлрд╝реЙрдиреНрдЯ рдирд╛рдо! = рдлрд╝реЙрдиреНрдЯ рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо, рдлрд╝реЙрдиреНрдЯ рдХреЛ рдкреНрд░реАрд▓реЛрдб рдХрд┐рдП рдмрд┐рдирд╛ рднреА рдпрд╣ рд╕рдВрдХреНрд░рдордг рдХрд╛рдлреА рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдзреАрдорд╛ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ (рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЗрдВрд╕реНрдЯреНрд░реВрдореЗрдВрдЯреНрд╕ рд╕реЗ рд╕рднреА рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рд╣рдЯрд╛ рджрд┐рдП рдЧрдП рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдЬрд╛рдВрдЪрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реЛрдЧрд╛)ред
рдореЗрд░рд╛ рдХреНрд╖реЗрддреНрд░ рдЗрд╕ рддрд░рд╣ рднрд░рд╛ (рдЙрддреНрдкрдиреНрди) рд╣реИ:
- (void)generateFieldWithExcludedCellInCol:(NSUInteger)cellCol row:(NSUInteger)cellRow { BGLog();
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, SKAction рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд╡рд┐рд╡рд░рдг рдереЗ, рдЬреЛ рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд▓рдЧ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рд╕реИрдкрд░ рдореЗрдВ рдореБрдЭреЗ рдкрдардиреАрдп рдХреЛрдб рдХреЛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛, рд▓реЗрдХрд┐рди рдЕрдлрд╕реЛрд╕ ... рдпрд╣ рдмрдбрд╝реА рдореБрд╢реНрдХрд┐рд▓ рд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛ред
рдРрдк рд╕реНрдЯреЛрд░
рд▓рдШреБ рдФрд░ рд╕реНрдкрд╖реНрдЯ:

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