Why not login to Qiita and try out its useful features?

We'll deliver articles that match you.

You can read useful information later.

0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Qiita Tech Festa 2026 ใจใ‚„ใ‚‰ใงใ€็ŸญๆœŸ้–“ใงๅคง้‡ใฎ่จ˜ไบ‹ใฎๆŠ•็จฟใ‚’่ฆๆฑ‚ใ•ใ‚Œใ‚‹ใ“ใจใจใชใฃใŸใ€‚
(ใจใ„ใฃใฆใ‚‚ใ€ใ‚ขใƒ‰ใƒ™ใƒณใƒˆใ‚ซใƒฌใƒณใƒ€ใƒผใ‚ˆใ‚Šใ‚‚ๆœŸ้–“ใŒ้•ทใใฆ่จ˜ไบ‹ใฎ่ฆๆฑ‚ๆ•ฐใŒๅฐ‘ใชใ„ใ‚คใƒผใ‚ธใƒผใƒขใƒผใƒ‰ใงใ‚ใ‚‹ใ€‚ใ“ใฎ็จ‹ๅบฆใงใ‚ญใƒ„ใ„ใจไธปๅผตใ™ใ‚‹ใฎใฏ็”˜ใˆ)

ไปŠๅ›žใฎ่‡ชๅˆ†ใฏใ€ใ€Œๅ›žใŒๅ›žใ‚‹ๅ›žใ€ใ‚ทใƒชใƒผใ‚บใงใ‚ใ‚‹็จ‹ๅบฆ่จ˜ไบ‹ๆ•ฐใ‚’็จผใ„ใงใใŸใ€‚
ใ—ใ‹ใ—ใ€ใ“ใฎใ‚ทใƒชใƒผใ‚บใ‚‚ใใ‚ใใ‚้™็•Œใ‹ใ‚‚ใ—ใ‚Œใชใ„ใ€‚

ใใ†ใ„ใˆใฐใ€่จ˜ไบ‹ๆ•ฐใ‚’็จผใ’ใใ†ใช้กŒๆใจใ—ใฆใ€ใ€ŒHello World ใ‚ใŸใŸใŸใŸใ€ใชใ‚“ใฆใ„ใ†ใฎใ‚‚ใ‚ใฃใŸใ€‚
ใ“ใฎ้กŒๆใฏใ€ๅนดๆ˜Žใ‘ใซใ‚‚ๆ—ขใซ่จ˜ไบ‹ๆ•ฐใ‚’็จผใใฎใซไฝฟใฃใŸใŒใ€ใพใ ๆ‰ฑใฃใฆใ„ใชใ„่จ€่ชžใŒๆฎ‹ใฃใฆใŠใ‚Šใ€็จผใŽใฎไฝ™ๅœฐใŒๆฎ‹ใฃใฆใ„ใ‚‹ใ€‚

Hello World ใ‚ใŸใŸใŸใŸ

ใ€ŒHello World ใ‚ใŸใŸใŸใŸใ€ใฏใ€ไปฅไธ‹ใฎ่จ˜ไบ‹ใงๅฎš็พฉใ•ใ‚Œใฆใ„ใ‚‹ใ€‚
Hello World ใ‚ใŸใŸใŸใŸ 1ๆ—ฅ็›ฎ ๆฆ‚่ฆ็ทจ #HelloWorld - Qiita

ใ“ใฎ่จ˜ไบ‹ใงใ€ไปฅไธ‹ใฎ่ฆไปถใŒๅฎš็พฉใ•ใ‚Œใฆใ„ใ‚‹ใ€‚

ใƒปใ€Œใ‚ใ€ใ‹ใ€ŒใŸใ€ใ‚’ใƒฉใƒณใƒ€ใƒ ใซๅ‡บๅŠ›ใ™ใ‚‹
ใƒปใ€Œใ‚ใŸใŸใŸใŸใ€ใŒๅ‡บใŸใ‚‰ใ€ŒใŠๅ‰ใฏใ‚‚ใ†ๆญปใ‚“ใงใ„ใ‚‹ใ€ใ‚’ๅ‡บๅŠ›ใ—ใฆ็ต‚ไบ†ใ™ใ‚‹

ใใ—ใฆใ€ไปฅไธ‹ใฎๅ‡ฆ็†ใƒ•ใƒญใƒผใŒๆŽจๅฅจใ•ใ‚Œใฆใ„ใ‚‹ใ€‚

ๅค‰ๆ•ฐ hako ใซ็ฉบๆ–‡ๅญ—ใ‚’ใ‚ปใƒƒใƒˆ
ๅค‰ๆ•ฐ running ใซ true ใ‚’ใ‚ปใƒƒใƒˆ
running ใŒ true ใชใ‚‰็นฐใ‚Š่ฟ”ใ™
    0ใ‹1ใ‚’ใƒฉใƒณใƒ€ใƒ ใซๆฑบใ‚ใ‚‹
    ใ‚‚ใ—0ใชใ‚‰
        ๅค‰ๆ•ฐ char ใซใ€Œใ‚ใ€ใ‚’ใ‚ปใƒƒใƒˆ
    ใใฎไป–ใชใ‚‰
        ๅค‰ๆ•ฐ char ใซใ€ŒใŸใ€ใ‚’ใ‚ปใƒƒใƒˆ
    ็”ป้ขใซ char ใ‚’ๅ‡บๅŠ›
    char ใ‚’ hako ใซ่ฟฝๅŠ 
    ใ‚‚ใ— ๆœ€ๅพŒใฎ 5 ๆ–‡ๅญ—ใŒใ€Œใ‚ใŸใŸใŸใŸใ€ใชใ‚‰
        "ใŠๅ‰ใฏใ‚‚ใ†ๆญปใ‚“ใงใ„ใ‚‹" ใ‚’ๅ‡บๅŠ›
        running ใซ false ใ‚’ใ‚ปใƒƒใƒˆ        

ๆฑๆ–นๅผพๅน•้ขจv0.12m

ๆฆ‚่ฆ

ใ€Œๆฑๆ–นๅผพๅน•้ขจv0.12mใ€ใฏใ€ใ‚นใ‚ฏใƒชใƒ—ใƒˆใ‚’ๆ›ธใใ“ใจใซใ‚ˆใฃใฆๅผพๅน•ใ‚ทใƒฅใƒผใƒ†ใ‚ฃใƒณใ‚ฐใ‚ฒใƒผใƒ ใฎๅผพๅน•ใ‚’ไฝœๆˆใ™ใ‚‹ใ“ใจใ‚’็›ฎ็š„ใจใ—ใŸ Windows ็”จใ‚ฝใƒ•ใƒˆใงใ‚ใ‚‹ใ€‚

ไปฅไธ‹ใฎใ‚ตใ‚คใƒˆใงใ€ใ‚ฝใƒ•ใƒˆใ‚’ใƒ€ใ‚ฆใƒณใƒญใƒผใƒ‰ใ—ใŸใ‚Šใ€ใƒ˜ใƒซใƒ— (ใ‚นใ‚ฏใƒชใƒ—ใƒˆใฎใƒชใƒ•ใ‚กใƒฌใƒณใ‚น) ใ‚’่ฆ‹ใŸใ‚Šใงใใ‚‹ใ€‚

ๆฑๆ–นๅผพๅน•้ขจv0.12m

ใ“ใฎใ‚ตใ‚คใƒˆใงใฏใ€ๅบƒๅ‘ŠใŒ่กจ็คบใ•ใ‚Œใ‚‹ใ“ใจใŒใ‚ใ‚‹ใ€‚
ๅบƒๅ‘Šใฎๆœ‰็„กใƒปๅ†…ๅฎนใƒปๅฎ‰ๅ…จๆ€งใชใฉใซใคใ„ใฆใ€ๆœฌ่จ˜ไบ‹ใฎ็ญ†่€…ใฏไธ€ๅˆ‡้–ข็Ÿฅใ—ใชใ„ใ€‚

ใ‚นใ‚ฏใƒชใƒ—ใƒˆใฎๆ›ธใๆ–น

ใ“ใ“ใงใฏใ€ๆฑๆ–นๅผพๅน•้ขจใŒๅฏพๅฟœใ—ใฆใ„ใ‚‹ใ‚นใ‚ฏใƒชใƒ—ใƒˆใฎใ†ใกใ€ไปŠๅ›ž็”จใ„ใ‚‹ๆ•ต (ๅผพๅน•ใ‚’ๆ’ƒใฃใฆใใ‚‹ใƒœใ‚น) ใ‚’่กจใ™ใ‚นใ‚ฏใƒชใƒ—ใƒˆใฎๆ›ธใๆ–นใ‚’็ดนไป‹ใ™ใ‚‹ใ€‚

ใ‚นใ‚ฏใƒชใƒ—ใƒˆใฎ้ชจๆ ผ

ๆฑๆ–นๅผพๅน•้ขจใฎ (ๆ•ตใ‚’่กจใ™) ใ‚นใ‚ฏใƒชใƒ—ใƒˆใฏใ€ไปฅไธ‹ใฎใ‚ˆใ†ใชๆง‹้€ ใ‚’ๅ–ใ‚‹ใ€‚

ๅ†’้ ญใงใ€# ใ‹ใ‚‰ๅง‹ใพใ‚‹่กŒใ‚’็”จใ„ใฆใ€ใ“ใฎใ‚นใ‚ฏใƒชใƒ—ใƒˆใฎใƒกใ‚ฟใƒ‡ใƒผใ‚ฟใ‚’่จ˜่ฟฐใ™ใ‚‹ใ€‚
ใใ—ใฆใ€script_enemy_main ๅ†…ใงใ€ๆ•ตใฎๅ‹•ไฝœใ‚’่จ˜่ฟฐใ™ใ‚‹ใ€‚

ใ‚นใ‚ฏใƒชใƒ—ใƒˆใฏใ€script ใƒ‡ใ‚ฃใƒฌใ‚ฏใƒˆใƒชๅ†…ใซใ€ๆ–‡ๅญ—ใ‚ณใƒผใƒ‰ Shift_JIS ใงไฟๅญ˜ใ™ใ‚‹ใ€‚

#ๆฑๆ–นๅผพๅน•้ขจ       // ใ“ใ‚ŒใŒๆฑๆ–นๅผพๅน•้ขจใฎ (ๅ˜็™บๅ†็”Ÿ็”จใฎ) ใ‚นใ‚ฏใƒชใƒ—ใƒˆใงใ‚ใ‚‹ใ“ใจใ‚’่กจใ™
#Title[้ธๆŠž็”ป้ขใฎ้ธๆŠž่‚ขใจใ—ใฆ่กจ็คบใ™ใ‚‹ใ‚ฟใ‚คใƒˆใƒซ]
#Player[FREE]     // ็”จๆ„ใ•ใ‚ŒใŸๅ…จใฆใฎ่‡ชๆฉŸใ‚’ไฝฟ็”จๅฏ่ƒฝใงใ‚ใ‚‹ใ“ใจใ‚’่กจใ™
#ScriptVersion[2] // ใ‚นใ‚ฏใƒชใƒ—ใƒˆใฎใƒใƒผใ‚ธใƒงใƒณใ‚’่กจใ™

script_enemy_main {
	// ใ“ใ“ใงๅ„ๅ‡ฆ็†ใƒปๅ„ใƒ•ใƒฌใƒผใƒ ใง้€šใ—ใฆ็”จใ„ใ‚‹ๅค‰ๆ•ฐใ‚’ๅฎฃ่จ€ใ™ใ‚‹

	@Initialize {
		// ๆœ€ๅˆ (ๆ•ตใฎๅ‡บ็พๆ™‚) ใซๅฎŸ่กŒใ™ใ‚‹ๅ‡ฆ็†
	}

	@MainLoop {
		// ๅ„ใƒ•ใƒฌใƒผใƒ ใงๅฎŸ่กŒใ™ใ‚‹่จˆ็ฎ—ๅ‡ฆ็†
	}

	@DrawLoop {
		// ๅ„ใƒ•ใƒฌใƒผใƒ ใงๅฎŸ่กŒใ™ใ‚‹ๆ็”ปๅ‡ฆ็†
	}

	@Finalize {
		// ๆœ€ๅพŒ (ๆ•ตใฎๆถˆๆป…ๆ™‚) ใซๅฎŸ่กŒใ™ใ‚‹ๅ‡ฆ็†
	}
}

ใƒ˜ใƒซใƒ—ใฎใ€Œๅฟ…้ ˆ้ƒจๅˆ†ใ€ใ‚’่ฆ‹ใ‚‹ใจใ€ใ“ใ“ใง็ดนไป‹ใ—ใŸไปฅๅค–ใฎใƒกใ‚ฟใƒ‡ใƒผใ‚ฟใ‚„ๅ‹•ไฝœใฎ่จ˜่ฟฐๆ–นๆณ•ใ‚‚็ดนไป‹ใ•ใ‚Œใฆใ„ใ‚‹ใ€‚
ใชใŠใ€ๅŒ้ …็›ฎใงใฏใ€Œๆœ€ไฝŽ้™ๅฟ…่ฆใช้ƒจๅˆ†ใ€ใจไธปๅผตใ—ใฆใ„ใ‚‹ใŒใ€ใ“ใ‚Œใฏๅ˜˜ใงใ€ใ“ใ“ใง็ดนไป‹ใ—ใŸใ‚ˆใ†ใซใใฎไธ€้ƒจใ‚’่จ˜่ฟฐใ—ใชใใฆใ‚‚ใ‚จใƒฉใƒผใซใชใ‚‰ใšใซ่ช่ญ˜ใ•ใ‚ŒใŸใ€‚

ใƒ˜ใƒซใƒ—ใฎใ€Œๅผพๅน•ใ‚’ใคใใ‚‹ไบบใธใ€ใซ

ใ‚นใ‚ฏใƒชใƒ—ใƒˆใฎใ€Œ@DrawLoopใ€้ƒจๅˆ†ใซrand้–ขๆ•ฐใ‚’็”จใ„ใฆใ„ใ‚‹ๅ ดๅˆใฏๆญฃๅธธใซๅ†็”Ÿใ•ใ‚Œใชใใชใ‚Šใพใ™ใ€‚ ใ“ใ‚Œใฏใ€ใƒ•ใƒฌใƒผใƒ ใ‚นใ‚ญใƒƒใƒ—ใ‚’่กŒใฃใŸๅ ดๅˆใซไนฑๆ•ฐใŒใšใ‚Œใ‚‹ใ‹ใ‚‰ใงใ™ใ€‚

ใจๆ›ธใ‹ใ‚Œใฆใ„ใ‚‹ใ“ใจใ‹ใ‚‰ใ€@MainLoop ใฏๆฏŽใƒ•ใƒฌใƒผใƒ ็ขบๅฎŸใซๅฎŸ่กŒใ•ใ‚Œใ€@DrawLoop ใฏใƒ•ใƒฌใƒผใƒ ใ‚นใ‚ญใƒƒใƒ—ๆ™‚ๅฎŸ่กŒใ•ใ‚Œใชใ„ใ€ใจๆŽจๆธฌใงใใ‚‹ใ€‚

ๅค‰ๆ•ฐใจๅผ

let foo;

ใฎใ‚ˆใ†ใซใ€let ใ‚’็”จใ„ใ‚‹ใ“ใจใงๅค‰ๆ•ฐใ‚’ๅฎฃ่จ€ใงใใ‚‹ใ€‚
ๅค‰ๆ•ฐใซใฏใ€ใใ‚Œใ‚’ๅฎฃ่จ€ใ—ใŸใƒ–ใƒญใƒƒใ‚ฏใ€ใŠใ‚ˆใณใใฎๅ†…ๅดใฎใƒ–ใƒญใƒƒใ‚ฏใ‹ใ‚‰ใฎใฟใ‚ขใ‚ฏใ‚ปใ‚นใงใใ‚‹ใ€‚
ๅฎฃ่จ€ใ—ใฆใ„ใชใ„ๅค‰ๆ•ฐ (ๆœชๅฎš็พฉใฎ่ญ˜ๅˆฅๅญ) ใ‚’ไฝฟ็”จใ™ใ‚‹ใจใ€ใ‚จใƒฉใƒผใซใชใ‚‹ใ€‚

let hoge = 72;

ใฎใ‚ˆใ†ใซใ€ๅฎฃ่จ€ใจๅŒๆ™‚ใซๅ€คใ‚’ไปฃๅ…ฅใ—ใฆใ‚‚ใ‚ˆใ„ใ€‚

ใ“ใ‚Œใฏใ‚จใƒฉใƒผใซใชใ‚‹
let a, b;

ใฎใ‚ˆใ†ใซใ€่ค‡ๆ•ฐใฎๅค‰ๆ•ฐใ‚’ใพใจใ‚ใฆๅฎฃ่จ€ใ™ใ‚‹ใ“ใจใฏใงใใชใ„ใ€‚

่จˆ็ฎ—ใงใฏใ€C่จ€่ชžใซไผผใŸไปฅไธ‹ใฎๆผ”็ฎ—ๅญใŒไฝฟ็”จใงใใ‚‹ใ€‚

  • ไปฃๅ…ฅ =
  • ๅ››ๅ‰‡ๆผ”็ฎ— +ใƒป-ใƒป*ใƒป/ใ€ๅ‰ฐไฝ™ %
  • ๆฏ”่ผƒ ==ใƒป!=ใƒป<ใƒป<=ใƒป>ใƒป>=
  • ่ซ–็†ๆผ”็ฎ— !ใƒป&&ใƒป|| (็Ÿญ็ตก่ฉ•ไพกใ‚ใ‚Š)
  • ๅพŒ็ฝฎใ‚คใƒณใ‚ฏใƒชใƒกใƒณใƒˆ ++ใ€ๅพŒ็ฝฎใƒ‡ใ‚ฏใƒชใƒกใƒณใƒˆ --
  • ่ค‡ๅˆไปฃๅ…ฅ +=ใƒป-=ใƒป*=ใƒป/=ใƒป%=

ใพใŸใ€ๆผ”็ฎ—ๅญ ^ ใฏ็ดฏไน—ใ‚’่กจใ™ใ€‚่ค‡ๅˆไปฃๅ…ฅ ^= ใ‚‚ไฝฟ็”จใงใใ‚‹ใ€‚

ๅ‰็ฝฎใ‚คใƒณใ‚ฏใƒชใƒกใƒณใƒˆใƒปๅ‰็ฝฎใƒ‡ใ‚ฏใƒชใƒกใƒณใƒˆใฏไฝฟ็”จใงใใชใ„ใ€‚
ใพใŸใ€ไปฃๅ…ฅใƒป่ค‡ๅˆไปฃๅ…ฅใƒปใ‚คใƒณใ‚ฏใƒชใƒกใƒณใƒˆใƒปใƒ‡ใ‚ฏใƒชใƒกใƒณใƒˆใฎ็ตๆžœใฏๅ€คใจใ—ใฆไฝฟ็”จใงใใชใ„ใ€‚

ใ“ใ‚Œใ‚‰ใฏใ‚จใƒฉใƒผใซใชใ‚‹
++a;
b = (a = 72);
b = a++;
b = (a += 5);

้…ๅˆ—ใจๆ–‡ๅญ—ๅˆ—

[] ใงๅ›ฒใ‚“ใง่ฆ็ด ใ‚’ไธฆในใ‚‹ใ“ใจใงใ€้…ๅˆ—ใ‚’ไฝœๆˆใงใใ‚‹ใ€‚
้…ๅˆ—ใฎ่ฆ็ด ใฏใ€้…ๅˆ—[ๆทปๅญ—] ใงๅ‚็…งใงใใ€ๆœ€ๅˆใฎ่ฆ็ด ใฏ ้…ๅˆ—[0] ใงใ‚ใ‚‹ใ€‚

let arr = [1, 2, 3];
let elem = arr[1]; // elem = 2

ๆ–‡ๅญ—ๅˆ—ใฏใ€ๆ–‡ๅญ—ใ‚’่ฆ็ด ใจใ™ใ‚‹้…ๅˆ—ใงใ‚ใ‚‹ใ€‚

let hoge1 = "hoge";
let hoge2 = ['h', 'o', 'g', 'e'];
// hoge1 == hoge2 ใŒ true ใจใชใ‚‹

~ ๆผ”็ฎ—ๅญใงใ€้…ๅˆ—ใ‚’็ตๅˆใงใใ‚‹ใ€‚

let str = "hello, ";
str = str ~ "world"; // str = "hello, world"

่ค‡ๅˆไปฃๅ…ฅ ~= ใฏไฝฟ็”จใงใใชใ„ใ€‚

ใ“ใ‚Œใฏใ‚จใƒฉใƒผใซใชใ‚‹
let str = "hello, ";
str ~= "world";

length(้…ๅˆ—) ใงใ€้…ๅˆ—ใฎ่ฆ็ด ๆ•ฐใ‚’ๅ–ๅพ—ใงใใ‚‹ใ€‚

let len = length("hoge"); // len = 4

้…ๅˆ—[ๅง‹็‚นๆทปๅญ—..็ต‚็‚นๆทปๅญ—+1] ใงใ€้…ๅˆ—ใฎไธ€้ƒจใ‚’ๆŠœใๅ‡บใ—ใŸๆ–ฐใ—ใ„้…ๅˆ—ใ‚’ไฝœๆˆใงใใ‚‹ใ€‚

let str = "concatenate";
let str2 = str[3..6]; // str2 = "cat"

ๆŒ‡ๅฎšใ™ใ‚‹็ฏ„ๅ›ฒใŒ้…ๅˆ—ใฎๅ‰ใ‚„ๅพŒใ‚ใซใฏใฟๅ‡บใ—ใŸใ‚Šใ€็ต‚็‚นใŒๅง‹็‚นใ‚ˆใ‚Šๅ‰ใ ใฃใŸใ‚Šใ™ใ‚‹ใจใ€ใ‚จใƒฉใƒผใซใชใ‚‹ใ€‚

ใ“ใ‚Œใ‚‰ใฏใ‚จใƒฉใƒผใซใชใ‚‹
let str = "hoge";
let str2 = str[3..5];  // ใ‚จใƒฉใƒผ
let str3 = str[-1..2]; // ใ‚จใƒฉใƒผ
let str4 = str[2..1];  // ใ‚จใƒฉใƒผ
let str5 = str[2..2];  // ใ“ใ‚ŒใฏOK (็ฉบใฎ้…ๅˆ—ใซใชใ‚‹)

ใ€Œ่ฆ็ด ใ€ใฎๅ–ใ‚Šๅ‡บใ—ใจใ€ใ€Œ1่ฆ็ด ใฎ้…ๅˆ—ใ€ใฎๅ–ใ‚Šๅ‡บใ—ใฎๆททๅŒใซๆณจๆ„ใ—ใ‚ˆใ†ใ€‚

let str = "hoge";
let v1 = str[1];    // ๆ–‡ๅญ—   'o'
let v2 = str[1..2]; // ๆ–‡ๅญ—ๅˆ— "o"
//let str2 = str ~ v1; // ใ‚จใƒฉใƒผ๏ผšใ€Œๆ–‡ๅญ—ใ€ใ‚’็ตๅˆใ—ใ‚ˆใ†ใจใ—ใฆใ„ใ‚‹
let str3 = str ~ [v1]; // OK๏ผšใ€Œๆ–‡ๅญ—ใ€ใ‚’้…ๅˆ—ใซๅ…ฅใ‚Œใฆใ€Œๆ–‡ๅญ—ๅˆ—ใ€ใซใ—ใฆใ‹ใ‚‰็ตๅˆ
let str4 = str ~ v2;   // OK

ใƒžใƒซใƒใƒใ‚คใƒˆๆ–‡ๅญ—ใงใ‚‚ใ€Shift_JIS ใฎๅ„ใƒใ‚คใƒˆใ‚’ใ€Œๆ–‡ๅญ—ใ€ใจใ—ใฆๆ‰ฑใ†ใ€‚
ไปฅไธ‹ใฎไพ‹ใงใฏใ€ใ€Œไธ‰ใ€(8E4F) ใฎ1ใƒใ‚คใƒˆ็›ฎใจใ€Œ่‰ฒใ€(9046) ใฎ2ใƒใ‚คใƒˆ็›ฎใ‚’็ตๅˆใ—ใฆใ€Œ่–ฉใ€(8E46) ใ‚’ไฝœใฃใฆใ„ใ‚‹ใ€‚

let str = "ไธ‰่‰ฒ";
let len = length(str); // len = 4
let str2 = str[0..1] ~ str[3..4]; // str2 = "่–ฉ"

ใ“ใฎไปถใซใคใ„ใฆใ€ๅ…ฌๅผใฎใƒ˜ใƒซใƒ—ใซใฏๅ˜˜ใŒๆ›ธใ‹ใ‚Œใฆใ„ใ‚‹ใ€‚

ใ€Œๅค‰ๆ•ฐๅฎฃ่จ€ใ€ใซใฏ

'a', 'b', 'ใ‚' โ€ฆcharๅž‹(ๅ†…้ƒจ็š„ใซwchar_tใงๆ ผ็ดใ™ใ‚‹ใŸใ‚ๅ…จ่ง’ๆ–‡ๅญ—ใ‚‚OKใงใ™)

ใจๆ›ธใ‹ใ‚Œใฆใ„ใ‚‹ใŒใ€ๅฎŸ้š›ใฏ

ใ“ใ‚Œใฏใ‚จใƒฉใƒผใซใชใ‚‹
let c = 'ใ‚';

ใจๆ›ธใใจใ€Œๆ–‡ๅญ—ๅž‹ใฎๅ€คใฎ้•ทใ•ใฏ1ใ ใ‘ใงใ™ใ€ใจใ„ใ†ใ‚จใƒฉใƒผใŒๅ‡บใฆใ—ใพใ†ใ€‚

ใ•ใ‚‰ใซใ€ใ€Œ้…ๅˆ—ใ€ใซใฏ

let str = "ใ‚ใ„ใ†ใˆใŠ"[2];//strใฏ'ใ†'ใซใชใ‚Šใพใ™ใ€‚

ใจๆ›ธใ‹ใ‚Œใฆใ„ใ‚‹ใŒใ€ๅฎŸ้š›ใฎ str ใซใฏใ€Œใ„ใ€ใฎ1ใƒใ‚คใƒˆ็›ฎใฎ '\x82' ใŒๆ ผ็ดใ•ใ‚Œใ‚‹ใ€‚

้–ขๆ•ฐ

ๆฑๆ–นๅผพๅน•้ขจใงใฏใ€ๆง˜ใ€…ใช้–ขๆ•ฐใŒ็”จๆ„ใ•ใ‚Œใฆใ„ใ‚‹ใ€‚
ใ“ใ“ใงใฏใ€ไปŠๅ›žไฝฟ็”จใ—ใŸใ‚‚ใฎใฎใฟใ‚’็ดนไป‹ใ™ใ‚‹ใ€‚

ๆ•ตใฎ็Šถๆ…‹ใ‚’็ฎก็†ใ™ใ‚‹้–ขๆ•ฐ

ใƒชใƒ•ใ‚กใƒฌใƒณใ‚นใงใฏใ€ใ€Œๆ•ตใ‚’ๅˆถๅพกใ™ใ‚‹้–ขๆ•ฐใ€ใจใ—ใฆ็ดนไป‹ใ•ใ‚Œใฆใ„ใ‚‹ใ€‚

SetLife(life)

ๆ•ตใฎใƒฉใ‚คใƒ•ใฎๅˆๆœŸๅ€ค (ๅ…ผใ€ๆœ€ๅคงๅ€ค) ใ‚’ๆ•ฐๅ€ค life ใซ่จญๅฎšใ™ใ‚‹ใ€‚

ใ“ใฎ้–ขๆ•ฐใฏใ€@Initialize ใงใกใ‚‡ใ†ใฉ1ๅ›žๅ‘ผใณๅ‡บใ™ในใใงใ‚ใ‚‹ใ€‚
ใ“ใฎ้–ขๆ•ฐใ‚’ๅ‘ผใณๅ‡บใ•ใชใ„ๅ ดๅˆใ€ๆ•ตใฏๅ‡บ็พๅพŒๅณๆถˆๆป…ใ—ใฆใ—ใพใ†ใ€‚

ใพใŸใ€life ใซๅค‰ๆ•ฐใ‚’ไฝฟ็”จใ—ใฆใฏใ„ใ‘ใชใ„ใ€‚

AddLife(delta)

ๆ•ตใฎใƒฉใ‚คใƒ•ใซ delta ใ‚’่ถณใ™ใ€‚
ใƒฉใ‚คใƒ•ใŒ 0 ไปฅไธ‹ใซใชใ‚‹ใจใ€ๆ•ตใฏๆถˆๆป…ใ™ใ‚‹ใ€‚
ใพใŸใ€ใƒฉใ‚คใƒ•ใฏ SetLife ใง่จญๅฎšใ—ใŸๅˆๆœŸๅ€คใ‚’่ถ…ใˆใชใ„ใ€‚

ๆƒ…ๅ ฑใ‚’ๅ–ๅพ—ใ™ใ‚‹้–ขๆ•ฐ

ใƒชใƒ•ใ‚กใƒฌใƒณใ‚นใงใฏใ€ใ€Œ็‰นๅฎšใฎๅ€คใ‚’ๅ–ๅพ—ใ™ใ‚‹้–ขๆ•ฐใ€ใจใ—ใฆ็ดนไป‹ใ•ใ‚Œใฆใ„ใ‚‹ใ€‚

GetClipMinX()

ใƒ•ใ‚ฃใƒผใƒซใƒ‰ใฎๅทฆ็ซฏใฎ x ๅบงๆจ™ใ‚’่ฟ”ใ™ใ€‚

GetClipMaxX()

ใƒ•ใ‚ฃใƒผใƒซใƒ‰ใฎๅณ็ซฏใฎ x ๅบงๆจ™ใ‚’่ฟ”ใ™ใ€‚

GetClipMinY()

ใƒ•ใ‚ฃใƒผใƒซใƒ‰ใฎไธŠ็ซฏใฎ y ๅบงๆจ™ใ‚’่ฟ”ใ™ใ€‚

GetClipMaxY()

ใƒ•ใ‚ฃใƒผใƒซใƒ‰ใฎไธ‹็ซฏใฎ y ๅบงๆจ™ใ‚’่ฟ”ใ™ใ€‚

GetCenterX()

ใƒ•ใ‚ฃใƒผใƒซใƒ‰ใฎไธญๅฟƒใฎ x ๅบงๆจ™ใ‚’่ฟ”ใ™ใ€‚

GetCenterY()

ใƒ•ใ‚ฃใƒผใƒซใƒ‰ใฎไธญๅฟƒใฎ y ๅบงๆจ™ใ‚’่ฟ”ใ™ใ€‚

rand_int(min, max)

min ไปฅไธŠ max ไปฅไธ‹ใฎๆ•ดๆ•ฐใฎไนฑๆ•ฐใ‚’่ฟ”ใ™ใ€‚

ใƒชใƒ•ใ‚กใƒฌใƒณใ‚นใงใฏใ€rand_int ใฎ่ชฌๆ˜Žใฎไธญใซ

min>maxใชใ‚‰rand(max,min)ใŒ่ฟ”ใ‚Šใพใ™ใ€‚

ใจๆ›ธใ‹ใ‚ŒใฆใŠใ‚Šใ€rand ใฏ (ๆ•ดๆ•ฐใจใฏ้™ใ‚‰ใชใ„) ๅฎŸๆ•ฐใ‚’่ฟ”ใ™ๅˆฅใฎ้–ขๆ•ฐใงใ‚ใ‚‹ใ€‚
ใ—ใ‹ใ—ใ€ๅฎŸ้š›ใซ่ฉฆใ—ใฆใฟใ‚‹ใจใ€ๆ•ฐๅ›ž่ฉฆใ—ใฆๆ•ดๆ•ฐใ—ใ‹่ฟ”ใฃใฆใ“ใชใ‹ใฃใŸใ€‚
ๅพ“ใฃใฆใ€ใ“ใ‚Œใฏๅ˜˜ใงใ‚ใ‚‹็–‘ใ„ใŒๅผทใ„ใ€‚

length(array)

้…ๅˆ— array ใฎ่ฆ็ด ๆ•ฐใ‚’่ฟ”ใ™ใ€‚

ๆฑๆ–นๅผพๅน•้ขจใงใฏๆ–‡ๅญ—ๅˆ—ใ‚‚้…ๅˆ—ใฎไธ€็จฎใชใฎใงใ€ๆ–‡ๅญ—ๅˆ—ใฎๆ–‡ๅญ—ๆ•ฐใ‚‚ใ“ใ‚Œใงๅ–ๅพ—ใงใใ‚‹ใ€‚

ๆ็”ปใ‚’่กŒใ†้–ขๆ•ฐ

ใƒชใƒ•ใ‚กใƒฌใƒณใ‚นใงใฏใ€ใ€Œๆ็”ป็ณป้–ขๆ•ฐใ€ใจใ—ใฆ็ดนไป‹ใ•ใ‚Œใฆใ„ใ‚‹ใ€‚

DrawText(text, x, y, size, alpha)

ๅบงๆจ™ (x, y) ใซใ€ๅคงใใ• sizeใ€ไธ้€ๆ˜Žๅบฆ alpha ใงๆ–‡ๅญ—ๅˆ— text ใ‚’ๆ็”ปใ™ใ‚‹ใ€‚

CreateRenderTarget(name, width, height)

ๅๅ‰ nameใ€ๆœ€ไฝŽๆจชๅน… widthใ€ๆœ€ไฝŽ็ธฆๅน… height ใฎใƒ†ใ‚ฏใ‚นใƒใƒฃใ‚’ไฝœๆˆใ™ใ‚‹ใ€‚
ๅฎŸ้š›ใฎๆจชๅน…ใจ็ธฆๅน…ใฏใ€2ใฎ็ดฏไน—ใซใชใ‚‹ใ€‚
ใ“ใฎใƒ†ใ‚ฏใ‚นใƒใƒฃใฏใ€ๆ็”ปๅ…ˆใจใ—ใฆไฝฟ็”จใงใใ‚‹ใ€‚

DeleteGraphic(name)

ๅๅ‰ name ใฎใƒ†ใ‚ฏใ‚นใƒใƒฃใ‚’็ ดๆฃ„ใ™ใ‚‹ใ€‚
ๅ‡ฆ็†ใฎๆตใ‚Œใซใ‚‚ใ‚ˆใ‚‹ใ‹ใ‚‚ใ—ใ‚Œใชใ„ใŒใ€ใŸใจใˆใฐ็ต‚ไบ†ๆ™‚ใ€ใ™ใชใ‚ใก @Finalize ๅ†…ใง็”จใ„ใ‚‹ใ€‚

SetRenderTarget(name)

ๆ็”ปๅ…ˆใ‚’ๅๅ‰ name ใฎใ‚‚ใฎใซ่จญๅฎšใ™ใ‚‹ใ€‚
ไปฅๅ‰่จญๅฎšใ•ใ‚Œใฆใ„ใŸๆ็”ปๅ…ˆใฎๅๅ‰ใŒ่ฟ”ใ‚‹ใฎใงใ€ใƒ†ใ‚ฏใ‚นใƒใƒฃใธใฎๆ็”ปใŒๅฎŒไบ†ใ—ใŸใ‚‰ใ€ใ“ใ‚Œใ‚’็”จใ„ใฆใ‚‚ใจใฎๆ็”ปๅ…ˆใซๆˆปใ—ใฆใŠใใฎใŒใ‚ˆใ„ใ€‚

SetTexture(name)

DrawGraphic ใงๆ็”ปใ™ใ‚‹ (ใ™ใชใ‚ใกใ€ๆ็”ปๅ…ƒใฎ) ใƒ†ใ‚ฏใ‚นใƒใƒฃใ‚’ๅๅ‰ name ใฎใƒ†ใ‚ฏใ‚นใƒใƒฃใซ่จญๅฎšใ™ใ‚‹ใ€‚

SetGraphicRect(minx, miny, maxx, maxy)

DrawGraphic ใงๆ็”ปใ™ใ‚‹ใฎใ‚’ใ€ๆ็”ปๅ…ƒใฎ (minx, miny) ใ‚’ๅทฆไธŠใ€(maxx, maxy) ใ‚’ๅณไธ‹ใจใ™ใ‚‹็Ÿฉๅฝขใซ่จญๅฎšใ™ใ‚‹ใ€‚

ใ“ใฎ่จญๅฎšใ‚’่กŒใ‚ใชใ„ใจใ€ๆ็”ป็ตๆžœใฏใงใŸใ‚‰ใ‚ใงๆฏŽๅ›ž็•ฐใชใ‚‹ใ‚‚ใฎใซใชใฃใŸใ€‚
ๆ็”ปๅ…ƒใฎๅ…จไฝ“ใ‚’ๆ็”ปใ™ใ‚‹ๅ ดๅˆใงใ‚‚ใ€่จญๅฎšใฏๅฟ…่ฆใชใ‚ˆใ†ใงใ‚ใ‚‹ใ€‚

โ†“ใงใŸใ‚‰ใ‚ใชๆ็”ป็ตๆžœใฎไพ‹
SetGraphicRect ใ‚’ๅ‘ผใณๅ‡บใ—ใฆใ„ใชใ„ใจใใฎๆ็”ป็ตๆžœใฎไพ‹

DrawGraphic(x, y)

SetTexture ใ‚„ SetGraphicRect ใงใฎ่จญๅฎšใซๅŸบใฅใ„ใฆใ€ๆ็”ปๅ…ƒใƒ†ใ‚ฏใ‚นใƒใƒฃใฎๆŒ‡ๅฎšใ—ใŸ้ƒจๅˆ†ใ‚’ (x, y) ใ‚’ไธญๅฟƒใจใ—ใฆๆ็”ปใ™ใ‚‹ใ€‚

ๆฑๆ–นๅผพๅน•้ขจv0.12m ใง Hello World ใ‚ใŸใŸใŸใŸ

ไปฅไธ‹ใฎใ‚นใ‚ฏใƒชใƒ—ใƒˆใงใ€ใ€ŒHello World ใ‚ใŸใŸใŸใŸใ€ใ‚’่กŒใ†ใ“ใจใŒใงใใŸใ€‚

hwa.txt
#ๆฑๆ–นๅผพๅน•้ขจ
#Title[Hello World ใ‚ใŸใŸใŸใŸ]
#Player[FREE]
#ScriptVersion[2]

script_enemy_main {
	let charSize;
	let target;
	let charX;
	let charY;
	let hako;
	let running;

	@Initialize {
		charSize = 16;
		target = "ใ‚ใŸใŸใŸใŸ";
		SetLife(5000);
		CreateRenderTarget("็”ป้ข", GetClipMaxX(), GetClipMaxY());
		SetTexture("็”ป้ข");
		SetGraphicRect(GetClipMinX(), GetClipMinY(), GetClipMaxX(), GetClipMaxY());
		charX = GetClipMinX();
		charY = GetClipMinY() + 32;
		hako = "";
		running = true;
	}

	@MainLoop {
		if (running) {
			// 0 ใ‹ 1 ใ‚’ใƒฉใƒณใƒ€ใƒ ใซๆฑบใ‚ใ‚‹
			let r = rand_int(0, 1);
			// ใใ‚Œใซๅฟœใ˜ใฆๅค‰ๆ•ฐ char ใฎๅ€คใ‚’ใ‚ปใƒƒใƒˆ
			let char;
			if (r == 0) {
				char = "ใ‚";
			} else {
				char = "ใŸ";
			}
			// ็”ป้ขใซ char ใ‚’ๅ‡บๅŠ›
			if (charX + charSize > GetClipMaxX()) {
				charX = GetClipMinX();
				charY += charSize;
			}
			let oldRenderTarget = SetRenderTarget("็”ป้ข");
			DrawText(char, charX, charY, charSize, 255);
			charX += charSize;
			// char ใ‚’ hako ใซ่ฟฝๅŠ 
			hako = hako ~ char;
			// ๆœ€ๅพŒใฎ 5 ๆ–‡ๅญ—ใŒใ€Œใ‚ใŸใŸใŸใŸใ€ใ‹ๅˆคๅฎš
			if (
				length(hako) >= length(target) &&
				hako[length(hako)-length(target)..length(hako)] == target
			) {
				// "ใŠๅ‰ใฏใ‚‚ใ†ๆญปใ‚“ใงใ„ใ‚‹" ใ‚’ๅ‡บๅŠ›
				charX = GetClipMinX();
				charY += charSize;
				DrawText("ใŠๅ‰ใฏใ‚‚ใ†ๆญปใ‚“ใงใ„ใ‚‹", charX, charY, charSize, 255);
				// running ใซ false ใ‚’ใ‚ปใƒƒใƒˆ
				running = false;
			}
			SetRenderTarget(oldRenderTarget);
		} else {
			// running ใŒ false ใชใ‚‰็ต‚ไบ†ใ™ใ‚‹
			AddLife(-5000);
		}
	}

	@DrawLoop {
		DrawGraphic(GetCenterX(), GetCenterY());
	}

	@Finalize {
		DeleteGraphic("็”ป้ข");
	}
}

ๅฎŸ่กŒ็ตๆžœไพ‹

ใ€ŒHello World ใ‚ใŸใŸใŸใŸใ€ใฎ็ตๆžœใ‚’่กจ็คบใงใใฆใ„ใ‚‹ใ€‚
ใชใŠใ€ๆฑๆ–นๅผพๅน•้ขจใฎใƒชใƒ—ใƒฌใ‚คๆฉŸ่ƒฝใ‚’็”จใ„ใ€ไธ€ๅบฆๅพ—ใ‚‰ใ‚ŒใŸ็ตๆžœใ‚’ๅ†็พใ™ใ‚‹ใ“ใจใ‚‚ๅฏ่ƒฝใงใ‚ใ‚‹ใ€‚

ๅฎŸ่กŒ็ตๆžœไพ‹ 1
ๅฎŸ่กŒ็ตๆžœไพ‹ 2

่งฃ่ชฌ

ๅ…ฑ้€šๅค‰ๆ•ฐใฎๅฎฃ่จ€

	let charSize;
	let target;
	let charX;
	let charY;
	let hako;
	let running;

ๅ„ใƒ•ใƒฌใƒผใƒ ใ‚’้€šใ—ใฆ็Šถๆ…‹ใ‚’ไฟๆŒใ™ใ‚‹ๅค‰ๆ•ฐใจใ—ใฆใ€ไปฅไธ‹ใ‚’ๅฎฃ่จ€ใ™ใ‚‹ใ€‚

ๅค‰ๆ•ฐ ๅฝนๅ‰ฒ
charSize ๆ็”ปใ™ใ‚‹ๆ–‡ๅญ—ใฎๅคงใใ•
target ใงใใŸใ‚‰็ต‚ไบ†ใ™ใ‚‹ๆ–‡ๅญ—ๅˆ—
charX ๆฌกใฎๆ–‡ๅญ—ใ‚’ๆ็”ปใ™ใ‚‹ x ๅบงๆจ™
charY ๆฌกใฎๆ–‡ๅญ—ใ‚’ๆ็”ปใ™ใ‚‹ y ๅบงๆจ™
hako ใ“ใ‚Œใพใงๅ‡บใŸๆ–‡ๅญ—ใฎๅฑฅๆญด (ใ€ŒHello World ใ‚ใŸใŸใŸใŸใ€ใงๆŒ‡ๅฎš)
running ๆ–‡ๅญ—ใ‚’่ฟฝๅŠ ไธญใ‹ (ใ€ŒHello World ใ‚ใŸใŸใŸใŸใ€ใงๆŒ‡ๅฎš)

ๅˆๆœŸๅŒ– (@Initialize)

		charSize = 16;
		target = "ใ‚ใŸใŸใŸใŸ";

ๆ–‡ๅญ—ใฎๅคงใใ•ใจ็ต‚ไบ†ๆกไปถใ‚’่จญๅฎšใ™ใ‚‹ใ€‚(ๅฎšๆ•ฐใฎๅฝนๅ‰ฒ)

        SetLife(5000);

ใƒฉใ‚คใƒ•ใฎๅˆๆœŸๅ€คใ‚’่จญๅฎšใ—ใ€ๅณๆถˆๆป…ใ™ใ‚‹ใฎใ‚’้˜ฒใใ€‚

		CreateRenderTarget("็”ป้ข", GetClipMaxX(), GetClipMaxY());
		SetTexture("็”ป้ข");
		SetGraphicRect(GetClipMinX(), GetClipMinY(), GetClipMaxX(), GetClipMaxY());

ใ‚ฒใƒผใƒ ็”ป้ขๅ…จไฝ“ใ‚’่ฆ†ใ†ๅคงใใ•ใฎใƒ†ใ‚ฏใ‚นใƒใƒฃใ‚’ไฝœๆˆใ—ใ€ใ€Œ็”ป้ขใ€ใจใ„ใ†ๅๅ‰ใ‚’ใคใ‘ใ‚‹ใ€‚
ใ“ใฎใƒ†ใ‚ฏใ‚นใƒใƒฃใฎใ‚ฒใƒผใƒ ็”ป้ขใซๅฏพๅฟœใ™ใ‚‹้ƒจๅˆ†ๅ…จไฝ“ใ‚’ใ‚ฒใƒผใƒ ็”ป้ขใซๆ็”ปใ™ใ‚‹ใŸใ‚ใฎ่จญๅฎšใ‚’่กŒใ†ใ€‚

ใ“ใฎใƒ†ใ‚ฏใ‚นใƒใƒฃใซใ€Œ็”ป้ขใ€ใจใ„ใ†ๅๅ‰ใ‚’ใคใ‘ใ‚‹ใ“ใจใงใ€Hello World ใ‚ใŸใŸใŸใŸ ใฎใ€Œ็”ป้ขใซ char ใ‚’ๅ‡บๅŠ›ใ€ใจใ„ใ†ๆกไปถใ‚’ๆบ€ใŸใ—ใ‚„ใ™ใใ—ใŸใ€‚

		charX = GetClipMinX();
		charY = GetClipMinY() + 32;
		hako = "";
		running = true;

็Šถๆ…‹ใ‚’ๅˆๆœŸๅŒ–ใ™ใ‚‹ใ€‚
ๆ–‡ๅญ—ใฎๅ‡บๅŠ›ๅ…ˆใฎ x ๅบงๆจ™ใฏ็”ป้ขใฎๅทฆ็ซฏใซใ€y ๅบงๆจ™ใฏ็”ป้ขใฎไธŠ็ซฏใฎ HP ใƒใƒผใƒปๆฎ‹ใ‚Šๆ™‚้–“ใฎ่กจ็คบใ‚’้ฟใ‘ใŸไฝ็ฝฎใซ่จญๅฎšใ™ใ‚‹ใ€‚
hako ใจ running ใฏ Hello World ใ‚ใŸใŸใŸใŸ ใงใฎๆŒ‡ๅฎšใซๅพ“ใฃใฆ่จญๅฎšใ™ใ‚‹ใ€‚

ๆ›ดๆ–ฐ (@MainLoop)

		if (running) {
			/* ๅพŒ่ฟฐ */
		} else {
			// running ใŒ false ใชใ‚‰็ต‚ไบ†ใ™ใ‚‹
			AddLife(-5000);
		}

running ใŒ็œŸใงใ‚ใ‚Œใฐใ€ๆ›ดๆ–ฐๅ‡ฆ็†ใ‚’่กŒใ†ใ€‚
ใใ†ใงใชใ‘ใ‚Œใฐใ€ใƒฉใ‚คใƒ•ใ‚’ 0 ใซใ—ใ€็ต‚ไบ†ใ™ใ‚‹ใ€‚

			// 0 ใ‹ 1 ใ‚’ใƒฉใƒณใƒ€ใƒ ใซๆฑบใ‚ใ‚‹
			let r = rand_int(0, 1);
			// ใใ‚Œใซๅฟœใ˜ใฆๅค‰ๆ•ฐ char ใฎๅ€คใ‚’ใ‚ปใƒƒใƒˆ
			let char;
			if (r == 0) {
				char = "ใ‚";
			} else {
				char = "ใŸ";
			}

rand_int ้–ขๆ•ฐใง 0 ใ‹ 1 ใฎๅ€คใ‚’ใจใ‚‹ไนฑๆ•ฐใ‚’ๅ–ๅพ—ใ—ใ€ใใฎๅ€คใซๅฟœใ˜ใฆๅค‰ๆ•ฐ char ใฎๅ€คใ‚’ Hello World ใ‚ใŸใŸใŸใŸ ใงๆŒ‡ๅฎšใ•ใ‚ŒใŸๆ–‡ๅญ—ๅˆ—ใซใ‚ปใƒƒใƒˆใ™ใ‚‹ใ€‚

			// ็”ป้ขใซ char ใ‚’ๅ‡บๅŠ›
			if (charX + charSize > GetClipMaxX()) {
				charX = GetClipMinX();
				charY += charSize;
			}

ๆฌกใซๆ–‡ๅญ—ใ‚’ๆ็”ปใ—ใ‚ˆใ†ใจใ™ใ‚‹ไฝ็ฝฎใŒ็”ป้ขใ‹ใ‚‰ใฏใฟๅ‡บใ—ใใ†ใชใ‚‰ใ€ๆ”น่กŒใ™ใ‚‹ใ€‚

			let oldRenderTarget = SetRenderTarget("็”ป้ข");
			DrawText(char, charX, charY, charSize, 255);
			charX += charSize;

ๆ็”ปๅ…ˆใ‚’ใƒ†ใ‚ฏใ‚นใƒใƒฃใ€Œ็”ป้ขใ€ใซ่จญๅฎšใ—ใ€ๅค‰ๆ•ฐ char ใซๆ ผ็ดใ•ใ‚ŒใŸๆ–‡ๅญ—ๅˆ—ใ‚’ๆ็”ปใ™ใ‚‹ใ€‚
ๆฌกใฎๆ็”ปใซๅ‚™ใˆใ€ๆ–‡ๅญ—ใ‚’ๆ็”ปใ™ใ‚‹ไฝ็ฝฎใ‚’ๆ›ดๆ–ฐใ™ใ‚‹ใ€‚

			// char ใ‚’ hako ใซ่ฟฝๅŠ 
			hako = hako ~ char;

ๅค‰ๆ•ฐ char ใซๆ ผ็ดใ•ใ‚ŒใŸๆ–‡ๅญ—ๅˆ—ใ‚’ใ€ๅค‰ๆ•ฐ hako ใซๆ ผ็ดใ•ใ‚ŒใŸๆ–‡ๅญ—ๅˆ—ใฎๆœซๅฐพใซ่ฟฝๅŠ ใ™ใ‚‹ใ€‚

			// ๆœ€ๅพŒใฎ 5 ๆ–‡ๅญ—ใŒใ€Œใ‚ใŸใŸใŸใŸใ€ใ‹ๅˆคๅฎš
			if (
				length(hako) >= length(target) &&
				hako[length(hako)-length(target)..length(hako)] == target
			) {

ๅค‰ๆ•ฐ hako ใซๆ ผ็ดใ•ใ‚ŒใŸๆ–‡ๅญ—ๅˆ—ใฎๆœซๅฐพใซ็ต‚ไบ†ๆกไปถใฎๆ–‡ๅญ—ๅˆ—ใŒ็พใ‚ŒใŸใ‹ใ‚’ๅˆคๅฎšใ™ใ‚‹ใ€‚

ใพใšใ€hako ใซๆ ผ็ดใ•ใ‚ŒใŸๆ–‡ๅญ—ๅˆ—ใฎ้•ทใ•ใŒ็ต‚ไบ†ๆกไปถใฎๆ–‡ๅญ—ๅˆ—ใฎ้•ทใ•ไปฅไธŠใ‹ใ‚’ๅˆคๅฎšใ™ใ‚‹ใ€‚
(ๆ–‡ๅญ—ๆ•ฐใŒ่ถณใ‚Šใชใ‘ใ‚Œใฐใ€็ต‚ไบ†ๆกไปถใฎๆ–‡ๅญ—ๅˆ—ใฏ็พใ‚Œใฆใ„ใชใ„ใ“ใจใŒ็ขบๅฎšใ™ใ‚‹ใ€‚็ฏ„ๅ›ฒๅค–ใ‚’ๅ–ใ‚Šๅ‡บใใ†ใจใ—ใฆใ‚จใƒฉใƒผใซใชใ‚‹ใฎใ‚’้˜ฒใ)
ใใ†ใงใ‚ใ‚Œใฐใ€hako ใซๆ ผ็ดใ•ใ‚ŒใŸๆ–‡ๅญ—ๅˆ—ใฎๆœ€ๅพŒใ‹ใ‚‰็ต‚ไบ†ๆกไปถใฎๆ–‡ๅญ—ๅˆ—ใฎ้•ทใ•ใจๅŒใ˜้•ทใ•ใฎๆ–‡ๅญ—ๅˆ—ใ‚’ๅ–ใ‚Šๅ‡บใ—ใ€ใใ‚ŒใŒ็ต‚ไบ†ๆกไปถใฎๆ–‡ๅญ—ๅˆ—ใจ็ญ‰ใ—ใ„ใ‹ใ‚’ใƒใ‚งใƒƒใ‚ฏใ™ใ‚‹ใ€‚

				// "ใŠๅ‰ใฏใ‚‚ใ†ๆญปใ‚“ใงใ„ใ‚‹" ใ‚’ๅ‡บๅŠ›
				charX = GetClipMinX();
				charY += charSize;
				DrawText("ใŠๅ‰ใฏใ‚‚ใ†ๆญปใ‚“ใงใ„ใ‚‹", charX, charY, charSize, 255);
				// running ใซ false ใ‚’ใ‚ปใƒƒใƒˆ
				running = false;
			}

็ต‚ไบ†ๆกไปถใ‚’ๆบ€ใŸใ—ใŸใฎใงใ€ๆ”น่กŒใ—ใฆใ€ŒใŠๅ‰ใฏใ‚‚ใ†ๆญปใ‚“ใงใ„ใ‚‹ใ€ใ‚’ๅ‡บๅŠ›ใ—ใ€running ใซ false ใ‚’ใ‚ปใƒƒใƒˆใ™ใ‚‹ใ€‚

			SetRenderTarget(oldRenderTarget);

ใƒ†ใ‚ฏใ‚นใƒใƒฃใ€Œ็”ป้ขใ€ใซ่จญๅฎšใ—ใฆใ„ใŸๆ็”ปๅ…ˆใ‚’ใ€ใƒ‡ใƒ•ใ‚ฉใƒซใƒˆใซๆˆปใ™ใ€‚

ๆ็”ป (@DrawLoop)

		DrawGraphic(GetCenterX(), GetCenterY());

ๅ‡บใŸๆ–‡ๅญ—ใ‚’ๆ็”ปใ—ใŸใƒ†ใ‚ฏใ‚นใƒใƒฃใ€Œ็”ป้ขใ€ใฎๅ†…ๅฎนใ‚’ใ€ใ‚ฒใƒผใƒ ็”ป้ขใซๆ็”ปใ™ใ‚‹ใ€‚

็‰‡ไป˜ใ‘ (@Finalize)

		DeleteGraphic("็”ป้ข");

ๅ‡บใŸๆ–‡ๅญ—ใ‚’ๆ็”ปใ™ใ‚‹็”จใฎใƒ†ใ‚ฏใ‚นใƒใƒฃใ€Œ็”ป้ขใ€ใ‚’็ ดๆฃ„ใ™ใ‚‹ใ€‚

ใŠใ‚ใ‚Šใซ

ๆฑๆ–นๅผพๅน•้ขจv0.12m ใงใ€ŒHello World ใ‚ใŸใŸใŸใŸใ€ใ‚’ๅฎŸ็พใงใใŸใ€‚
ๆจ™ๆบ–ใงใƒชใƒ—ใƒฌใ‚คใŒไฝฟใˆใ‚‹ใจใ„ใ†ใฎใŒ้ข็™ฝใ„ใ€‚

ใชใŠใ€ไปŠๅ›žใฎใ€Œ็”ป้ขใ€ใซๆ–‡ๅญ—ใ‚’ๆ็”ปใ™ใ‚‹ไป•็ต„ใฟใฏ็ฐกๆ˜“็š„ใชใ‚‚ใฎใงใ‚ใ‚Šใ€

  • ๅน…ใŒ็•ฐใชใ‚‹ๆ–‡ๅญ—ใซๅฏพๅฟœใงใใชใ„
  • ใ€ŒใŠๅ‰ใฏใ‚‚ใ†ๆญปใ‚“ใงใ„ใ‚‹ใ€ใŒ็”ป้ขใ‹ใ‚‰ใฏใฟๅ‡บใ™ๅ ดๅˆใงใ‚‚ใ€ๆ”น่กŒใ—ใชใ„

ใจใ„ใฃใŸๅ•้กŒใŒใ‚ใ‚‹ใ€‚

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up

Comments

No comments

Let's comment your feelings that are more than good

0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Login to continue?

Login or Sign up with social account

Login or Sign up with your email address