Skip to content

Latest commit

 

History

History
93 lines (69 loc) · 11.3 KB

File metadata and controls

93 lines (69 loc) · 11.3 KB

ಹಾಸ್ಯ ಆಟವನ್ನು ರೂಪಿಸಿ: ವಿನ್ಯಾಸ ಮಾದರಿಗಳನ್ನು ಅನ್ವಯಿಸಿ

ನಿಯೋಜನೆ ಅವಲೋಕನ

ಡಿಸೈನ್ ಪ್ಯಾಟರ್ನ್‌ಗಳ ನಿಮಿತ್ತ ಹೊಸ ಜ್ಞಾನವನ್ನು ಬಳಸುವ ಮೂಲಕ ಸರಳ ಆಟ ಪ್ರೋಟೋಟೈಪ್ ಅನ್ನು ರಚಿಸಿ! ಈ ನಿಯೋಜನೆ σας ಆರ್ಕಿಟೆಕ್ಚರಲ್ ಮಾದರಿಗಳು (ಇನ್ಹೆರಿಟೆನ್ಸ್ ಅಥವಾ ಸಂಯೋಜನೆ) ಮತ್ತು ಪಬ್/ಸಬ್ ಸಂವಹನ ವ್ಯವಸ್ಥೆಯನ್ನು ಅಭ್ಯಾಸ ಮಾಡಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ, ನೀವು ಪಾಠದಲ್ಲಿ ಕಲಿತದ್ದು.

ಸೂಚನೆಗಳು

ಈ ಪಾಠದಿಂದ ಬಂದಿರುವ ವಿನ್ಯಾಸ ಮಾದರಿಗಳನ್ನು ಪ್ರದರ್ಶಿಸುವ ಸರಳ ಆಟ ಪ್ರತಿನಿಧಿಯನ್ನು ರಚಿಸಿ. ನಿಮ್ಮ ಆಟ ಕಾರ್ಯನಿರ್ವಹಿಸುವಂತಿರಬೇಕು ಆದರೆ ಸಂಕೀರ್ಣ ಗ್ರಾಫಿಕ್ಸ್ ಅಗತ್ಯವಿಲ್ಲ – ಆಧಾರಿತ ಆರ್ಕಿಟೆಕ್ಚರ್ ಮತ್ತು ಸಂವಹನ ಮಾದರಿಗಳ ಮೇಲೆ ಗಮನಕೊಡಿ.

ಅವಶ್ಯಕತೆಗಳು

ನಿಮ್ಮ ಆರ್ಕಿಟೆಕ್ಚರ್ ಮಾದರಿಯನ್ನು ಆರಿಸಿ:

  • ಆಯ್ಕೆ A: ವರ್ಗ ಆಧಾರಿತ ಇನ್ಹೆರಿಟೆನ್ಸ್ ಬಳಸಿ (GameObjectMovableHero ಉದಾಹರಣೆಯಂತೆ)
  • ಆಯ್ಕೆ B: ಸಂಯೋಜನೆ ಬಳಸಿ (ಮಿಶ್ರಿತ ವರ್ತನೆಗಳೊಂದಿಗೆ.factory ಫಂಕ್ಷನ್ ಎಂಬ ರೀತಿಯಲ್ಲಿ)

ಸಂವಹನವನ್ನು ಅನುಷ್ಠಾನಗೊಳಿಸಿ:

  • ಪಬ್/ಸಬ್ ಸಂದೇಶಕ್ಕಾಗಿ EventEmitter ವರ್ಗವನ್ನು ಒಳಪಡಿಸಿ
  • ಕನಿಷ್ಠ 2-3 ವಿಭಿನ್ನ ಸಂದೇಶ ತರಗತಿಗಳನ್ನು ಸ್ಥಾಪಿಸಿ (PLAYER_MOVE, ENEMY_SPAWN, SCORE_UPDATE ಹೀಗಾಗಿ)
  • ಬಳಕೆದಾರ ಇನ್‌ಪುಟ್ (ಕೀಬೋರ್ಡ್/ಮೌಸ್) ಅನ್ನು ಈವೆಂಟ್ ವ್ಯವಸ್ಥೆಯ ಮೂಲಕ ಆಟದ ಘಟನೆಗಳಿಗೆ ಸಂಪರ್ಕಗೊಳಿಸಿ

ಆಟ ಅಂಶಗಳನ್ನು ಸೇರಿಸಿ:

  • ಕನಿಷ್ಠ ಒಂದು ಆಟಗಾರ ನಿಯಂತ್ರಣದ ಪಾತ್ರ
  • ಕನಿಷ್ಠ ಒಂದು ಇನ್ನೊಂದು ಆಟ ವಸ್ತುವು (ಶತ್ರು, ಸಂಗ್ರಹಿಸುವ物, ಅಥವ ಪರಿಸರ ದೃಶ್ಯ)
  • ವಸ್ತುಗಳ ನಡುವಿನ ಮೂಲಭೂತ ಪರಸ್ಪರ ಸಂಪರ್ಕ (ದುರ್ಘಟನೆ, ಸಂಗ್ರಹಣೆ, ಅಥವಾ ಸಂವಹನ)

ಸಲಹೆ ನೀಡಲಾದ ಆಟದ ಆಲೋಚನೆಗಳು

ವಿಚಾರಿಸಲು ಸರಳ ಆಟಗಳು:

  • ಸ್ನೇಕ್ ಆಟ – ಸ್ನೇಕ್ ಅಂಗಗಳನ್ನು ತಲೆ ಹಿಂಬಾಲಿಸುತ್ತದೆ, ಆಹಾರ ಯಾದೃಚ್ಛಿಕವಾಗಿ ಉತ್ಪತ್ತಿಯಾಗುತ್ತದೆ
  • ಪಾಂಗ್ ವಿಭಿನ್ನತೆ – ಪ್ಯಾಡಲ್ ಇನ್‌ಪುಟ್‌ಗೆ ಪ್ರತಿಕ್ರಿಯಿಸುತ್ತದೆ, ಬಾಲ್ ಗೋಡೆಗಳಿಂದ ಮರುನಡೆದಿದೆ
  • ಸಂಗ್ರಹಿಸುವ ಆಟ – ಆಟಗಾರವು ವಸ್ತುಗಳನ್ನು ಸಂಗ್ರಹಿಸಿ, ಅಡೆತಡೆಗಳನ್ನು ತಪ್ಪಿಸಿ ನಿರ್ವಹಿಸಬೇಕು
  • ಟವರ್ ರಕ್ಷಣೆಯ ಮೂಲಗಳು – ಟವರ್‌ಗಳು ಹಿಂಬಲುತ್ತಿರುವ ಶತ್ರುಗಳನ್ನು ಪತ್ತೆ ಹಚ್ಚಿ ಹಡೆದು ಇಳಿಸುತ್ತವೆ

ಕೋಡ್ ರಚನೆ ಮಾರ್ಗದರ್ಶಿಗಳು

// ಉದಾಹರಣೆಯ ಪ್ರಾರಂಭಿಕ ರಚನೆ
const Messages = {
  // ನಿಮ್ಮ ಆಟದ ಸಂದೇಶಗಳನ್ನು ಇಲ್ಲಿ ವ್ಯಾಖ್ಯಾನಿಸಿ
};

class EventEmitter {
  // ನಿಮ್ಮ ಘಟನೆ ವ್ಯವಸ್ಥೆಯ ಅನುಷ್ಟಾನ
}

// ವರ್ಗ ಆಧಾರಿತ ಅಥವಾ ಸಂಯೋಜನಾ ವಿಧಾನ ಆಯ್ಕೆಮಾಡಿ
// ವರ್ಗ ಆಧಾರಿತ ಉದಾಹರಣೆ:
class GameObject { /* base properties */ }
class Player extends GameObject { /* player-specific behavior */ }

// ಅಥವಾ ಸಂಯೋಜನಾ ಉದಾಹರಣೆ:
const gameObject = { /* base properties */ };
const movable = { /* movement behavior */ };
function createPlayer() { /* combine behaviors */ }

ನಿಮ್ಮ ಅನುಷ್ಠಾನವನ್ನು ಪರೀಕ್ಷಿಸುವುದು

ನಿಮ್ಮ ಕೋಡ್ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿರುವುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ:

  • ನಡೆಸಿದ ಘಟನೆಗಳಿಗೆ ವಸ್ತುಗಳು ಚಲಿಸುವುದನ್ನು ಅಥವಾ ಬದಲಾಗುವುದನ್ನು ಪರೀಕ್ಷಿಸಿ
  • ಬಹು ವಸ್ತುಗಳು ಒಂದೇ ಈವೆಂಟ್‌ಗೆ ಪ್ರತಿಕ್ರಿಯಿಸಬಹುದೇ ಎಂದು ದೃಢೀಕರಿಸಿ
  • ಈಗಾಗಲೇ ಇರುವ ಕೋಡ್ ಬದಲಾಯಿಸುವದೇ ಇಲ್ಲದೆ ಹೊಸ ವರ್ತನೆಗಳನ್ನು ಸೇರಿಸಬಹುದೇ ಎಂದು ಪರಿಶೀಲಿಸಿ
  • ಕೀಬೋರ್ಡ್/ಮೌಸ್ ಇನ್‌ಪುಟ್ ಸರಿಯಾಗಿ ಆಟದ ಘಟನೆಗಳನ್ನು ಪ್ರೇರೇಪಿಸುತ್ತಿದೆಯೇ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ

ಸಲ್ಲಿಕೆ ಮಾರ್ಗಸೂಚಿಗಳು

ನಿಮ್ಮ ಸಲ್ಲಿಕೆಯಲ್ಲಿ ಈವುವು ಸೇರಿರಬೇಕು:

  1. ನಿಮ್ಮ ಆಟದ ಅನುಷ್ಠಾನದ ಜೊತೆಗೆ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಫೈಲ್(ಗಳು)
  2. ಆಟವನ್ನು ಚಾಲನೆ ಮತ್ತು ಪರೀಕ್ಷಿಸಲು HTML ಫೈಲ್ (ಸರಳವಾದದಾಗಬಹುದು)
  3. ನೀವು ಆಯ್ದ ಮಾದರಿಯೂ ಮತ್ತು ಕಾರಣವೇನೆಂದು ವಿವರಿಸುವ ಟಿಪ್ಪಣಿಗಳು
  4. ನಿಮ್ಮ ಸಂದೇಶ ತರಗತಿಗಳ ಚುಟ್‌ಪುಸ್ತಕ ಮತ್ತು ಅವುಗಳು ಏನು ಮಾಡುತ್ತವೆ ಎಂಬುದರ ಸಂಕ್ಷಿಪ್ತ ದಾಖಲೆ

ಮೌಲ್ಯಮಾಪನ ಮಾಪಕ

ಮಾನದಂಡಗಳು ಅತ್ಯುತ್ತಮ (3 ಅಂಕಗಳು) ಸಮರ್ಪಕ (2 ಅಂಕಗಳು) ಸುಧಾರಣೆ ಬೇಕು (1 ಅಂಕ)
ಆರ್ಕಿಟೆಕ್ಚರ್ ಮಾದರಿ ಇನ್ಹೆರಿಟೆನ್ಸ್ ಅಥವಾ ಸಂಯೋಜನೆ ಸರಿಯಾಗಿ ಕ್ಲಾಸ/ಆಬ್ಜೆಕ್ಟ್ ಹಿರಾರ್ಕಿಯನ್ನು ಹೊಂದಿರುವಂತೆ ಅನುಷ್ಠಾನಗೊಳ್ಳುತ್ತದೆ ಆಯ್ದ ಮಾದರಿಯನ್ನು ಕೆಲವು ಸಣ್ಣ ಸಮಸ್ಯೆಗಳೊಂದಿಗೆ ಬಳಸುತ್ತದೆ ಮಾದರಿಯನ್ನು ಪ್ರಯತ್ನಿಸುವುದರಲ್ಲಿ ಪ್ರಾಮುಖ್ಯತೆ ಸಮಸ್ಯೆಗಳಿವೆ
ಪಬ್/ಸಬ್ ಅನುಷ್ಠಾನ EventEmitter ನಿಭಾಯಿಸುವುದರಲ್ಲಿ ನಿಪುಣತೆ, ಹಲವು ಸಂದೇಶ ತರಗತಿಗಳೊಂದಿಗೆ ಹಾಗೂ ಸರಿಯಾದ ಈವೆಂಟ್ ಶೃಖಲೆಯೊಂದಿಗೆ ಮೂಲಭೂತ ಪಬ್/ಸಬ್ ವ್ಯವಸ್ಥೆ ಇದರ ಕೆಲವು ಈವೆಂಟ್ ನಿರ್ವಹಣೆಯೊಂದಿಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಈವೆಂಟ್ ವ್ಯವಸ್ಥೆಯು ಇದ್ದರೂ ಅತಿ ವಿಶ್ವಾಸಾರ್ಹವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದಿಲ್ಲ
ಆಟ ಕಾರ್ಯಕ್ಷಮತೆ ಈವೆಂಟ್‌ಗಳ ಮೂಲಕ ಸಂವಹನ ಮಾಡುವ ಮೂರು ಅಥವಾ ಹೆಚ್ಚು ಸಂವಹನಮಯ ಅಂಶಗಳು ಎರಡು ಸಂವಹನಮಯ ಅಂಶಗಳು ಮೂಲಭೂತ ಈವೆಂಟ್ ಸಂವಹನದೊಂದಿಗೆ ಒಂದೇ ಅಂಶ ಈವೆಂಟ್‌ಗಳಿಗೆ ಪ್ರತಿಕ್ರಿಯಿಸುತ್ತದೆ ಅಥವಾ ಮೂಲ ಪರಸ್ಪರ ಕ್ರಿಯೆ
ಕೋಡ್ ಗುಣಮಟ್ಟ ಸ್ವಚ್ಛ, ಚೆನ್ನಾಗಿ ಟಿಪ್ಪಣಿಸಲಾದ ಕೋಡ್ ಸಮರ್ಥ ಗಣನೀಯ ವ್ಯವಸ್ಥೆ ಮತ್ತು ಆಧುನಿಕ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್‌ಗಳೊಂದಿಗೆ ಸಾಮಾನ್ಯವಾಗಿ ಒಳ್ಳೆಯ ವ್ಯವಸ್ಥೆಯ ಕೋಡ್ ಮತ್ತು ಸಮರ್ಪಕವಾದ ಟಿಪ್ಪಣಿಗಳು ಕೋಡ್ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಆದರೆ ಸಂಘಟನೆ ಅಥವಾ ಸ್ಪಷ್ಟ ಟಿಪ್ಪಣಿಗಳನ್ನು ಬಿಟ್ಟಿದೆ

ಬೋನಸ್ ಅಂಕಗಳು:

  • ಪ್ಯಾಟರ್ನ್‌ಗಳ ವಿಭಿನ್ನ ಉಪಯೋಗಗಳನ್ನು ತೋರಿಸುವ ಸೃಜನಾತ್ಮಕ ಆಟದ ಯಂತ್ರಗಳು
  • ಬಹು ಇನ್‌ಪುಟ್ ವಿಧಾನಗಳು (ಕೀಬೋರ್ಡ್ ಮತ್ತು ಮೌಸ್ ಈವೆಂಟ್‌ಗಳು)
  • ಹೊಸ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಸುಲಭವಾಗಿ ವಿಸ್ತರಿಸಬಹುದಾದ ಆರ್ಕಿಟೆಕ್ಚರ್

ವಿವರಣೆ: ಈ ದಾಖಲೆ AI ಅನುವಾದ ಸೇವೆ Co-op Translator ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಿಖರತೆಗಾಗಿ ನಾವು ಪ್ರಯತ್ನಿಸಿದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳು ಇರಬಹುದೆಂದು ಗಮನಿಸಿರಲಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿನ ಮೂಲ ದಾಖಲೆಯನ್ನು ಅಧಿಕಾರಿಯ ಆದಾರವಾಗಿ ಪರಿಗಣಿಸಬೇಕು. ಪ್ರಮುಖ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವನುಮಾನದ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥಗರ್ಭಿತತೆಗಳಿಗೆ ನಾವು ಜವಾಬ್ದಾರರಾಗ ਨਹੀਂ.