Field

μ†Œκ°œ

FieldλŠ” Appκ³Ό κ΄€λ ¨λœ 속성 κ°’λ“€ μž…λ‹ˆλ‹€. 이 ν•„λ“œλ₯Ό ν™œμš©ν•΄ μ°Έκ°€ 쀑인 μŠ€νŽ˜μ΄μŠ€λ‚˜ 맡, ν”Œλ ˆμ΄μ–΄ 정보 등을 μ‘°νšŒν•˜κ±°λ‚˜, μ €μž₯곡간을 ν™œμš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

πŸ”’ μ•„μ΄μ½˜μ΄ μžˆλŠ” ν•„λ“œλŠ” μˆ˜μ •μ΄ λΆˆκ°€λŠ₯ν•œ 읽기 μ „μš© ν•„λ“œμž…λ‹ˆλ‹€.

이름
μ„€λͺ…

πŸ”’ spaceHashID

App이 μ„€μΉ˜λœ 슀페이슀의 해쉬값을 λ³΄μ—¬μ€λ‹ˆλ‹€.

πŸ”’ mapHashID

App이 μ„€μΉ˜λœ 맡의 해쉬값을 κ°€μ Έμ˜΅λ‹ˆλ‹€.

πŸ”’ creatorID

App을 μ‹€ν–‰ν•œ ν”Œλ ˆμ΄μ–΄μ˜ ID 값을 κ°€μ Έμ˜΅λ‹ˆλ‹€.

πŸ”’ players

맡에 μžˆλŠ” λͺ¨λ“  ν”Œλ ˆμ΄μ–΄ 리슀트λ₯Ό λ°°μ—΄λ‘œ κ°€μ Έμ˜΅λ‹ˆλ‹€.

πŸ”’ playerCount

앱이 μ„€μΉ˜λœ 맡에 μžˆλŠ” ν”Œλ ˆμ΄μ–΄μ˜ 수λ₯Ό κ°€μ Έμ˜΅λ‹ˆλ‹€.

cameraEffect

카메라 μ΄νŽ™νŠΈμ˜ μ’…λ₯˜λ₯Ό μ…‹νŒ…ν•  λ³€μˆ˜ κ°’

cameraEffectParam

카메라 μ΄νŽ™νŠΈ 효과의 λ²”μœ„ κ°’

displayRatio

ν™”λ©΄μ˜ μ€Œμ„ 컨트둀 ν•˜λŠ” κ°’

storage

슀페이슀 λ‚΄μ˜ App λ°μ΄ν„°μ˜ μ €μž₯곡간(슀페이슀 ν•œμ •)

followPlayer

App의 따라가기 κΈ°λŠ₯ ν™œμ„±ν™” μ—¬λΆ€ κ°’

showName

ν”Œλ ˆμ΄μ–΄ λ‹‰λ„€μž„ μˆ¨κΉ€ μ—¬λΆ€

πŸ”’ appHashID

μ•±μ˜ HashID 값을 κ°€μ Έμ˜΅λ‹ˆλ‹€.

enableFreeView

앱이 μ„€μΉ˜λœ 맡의 λ‘˜λŸ¬λ³΄κΈ° ν—ˆμš© μ—¬λΆ€λ₯Ό μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

πŸ“š API μ„€λͺ… 및 예제

spaceHashID & mapHashID

App.spaceHashID: String App.mapHashID: String

앱이 μ„€μΉ˜λœ 슀페이슀의 spaceHashID와 mapHashIDλ₯Ό κ°€μ Έμ˜΅λ‹ˆλ‹€. (μŠ€νŽ˜μ΄μŠ€μ™€ 맡 μ΄ν•΄ν•˜κΈ°)

예제

앱이 μ„€μΉ˜λœ 맡의 spaceHashID와 mapHashID 좜λ ₯해보기

// ν”Œλ ˆμ΄μ–΄κ°€ μž…μž₯ν•  λ•Œ λ™μž‘ν•˜λŠ” ν•¨μˆ˜
App.onJoinPlayer.Add(function(player){
  // μ±„νŒ…μ°½μ— spaceHashID와 mapHashID 좜λ ₯해보기
	App.sayToAll(`spaceHashID: ${App.spaceHashID}`); // spaceHashID: Ak42Xz
	App.sayToAll(`mapHashID: ${App.mapHashID}`) // mapHashId: 25g3RQ
})

creatorID

App.creatorID

λ―Έλ‹ˆκ²Œμž„μ„ μ‹€ν–‰ν•œ ν”Œλ ˆμ΄μ–΄μ˜ ID 값을 κ°€μ Έμ˜΅λ‹ˆλ‹€. ⛔맡 λ‚΄μž₯ν˜• 앱인 λ…Έλ©€ μ•±κ³Ό μ‚¬μ΄λ“œλ°” μ•±μ—μ„œλŠ” λ™μž‘ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

예제

λ―Έλ‹ˆκ²Œμž„μ„ μ‹€ν–‰ν•œ ν”Œλ ˆμ΄μ–΄μ˜ λ‹‰λ„€μž„μ„ μ±„νŒ…μ°½μ— 좜λ ₯해보기

// ν”Œλ ˆμ΄μ–΄κ°€ μž…μž₯ν•  λ•Œ λ™μž‘ν•˜λŠ” ν•¨μˆ˜
App.onJoinPlayer.Add(function(player){
	if(player.id == App.creatorID){
		App.sayToAll(`${player.name}λ‹˜μ΄ 앱을 μ‹€ν–‰ν–ˆμŠ΅λ‹ˆλ‹€.`)
	}
})

players

App.players: ScriptPlayer[]

맡에 μžˆλŠ” λͺ¨λ“  ν”Œλ ˆμ΄μ–΄ 리슀트λ₯Ό λ°°μ—΄λ‘œ κ°€μ Έμ˜΅λ‹ˆλ‹€.

예제

맡에 μžˆλŠ” λͺ¨λ“  ν”Œλ ˆμ΄μ–΄ λ‹‰λ„€μž„μ„ 좜λ ₯해보기

// q ν‚€λ₯Ό λˆ„λ₯΄λ©΄ λ™μž‘ν•˜λŠ” ν•¨μˆ˜
// App.addOnKeyDown μ„€λͺ…
App.addOnKeyDown(81,function(p){
	//App.playersλ₯Ό μ΄μš©ν•΄ μ±„νŒ…μ°½μ— μ ‘μ†ν•΄μžˆλŠ” λͺ¨λ“  ν”Œλ ˆμ΄μ–΄μ˜ λ‹‰λ„€μž„μ„ 좜λ ₯ν•˜κΈ°
	let players = App.players;
	for(let i in players){
		let player = players[i]
		App.sayToAll(player.name)
	}
})

playerCount

App.playerCount: Number

앱이 μ„€μΉ˜λœ 맡에 μžˆλŠ” ν”Œλ ˆμ΄μ–΄μ˜ 수λ₯Ό κ°€μ Έμ˜΅λ‹ˆλ‹€.

μ˜ˆμ‹œ

맡에 μžˆλŠ” ν”Œλ ˆμ΄μ–΄ 수 좜λ ₯해보기

// q ν‚€λ₯Ό λˆ„λ₯΄λ©΄ λ™μž‘ν•˜λŠ” ν•¨μˆ˜
// App.addOnKeyDown μ„€λͺ…
App.addOnKeyDown(81,function(p){
	// ν˜„μž¬ μ ‘μ†μž 수λ₯Ό μ±„νŒ…μ°½μ— 좜λ ₯
	App.sayToAll(`μ ‘μ†μž 수: ${App.playerCount}`)
})

cameraEffect & cameraEffectParam1

App.cameraEffect: NONE = 0, SPOTLIGHT = 1 App.cameraEffectParam1: Number

App.cameraEffect: 카메라 μ΄νŽ™νŠΈμ˜ μ’…λ₯˜λ₯Ό μ…‹νŒ…ν•  λ³€μˆ˜ κ°’

App.cameraEffectParam1: 카메라 μ΄νŽ™νŠΈ 효과의 λ²”μœ„ κ°’

예제

λΉ„λ„€νŒ… 효과λ₯Ό On/Off ν•˜λŠ” ν‚€ ν•¨μˆ˜ λ§Œλ“€μ–΄λ³΄κΈ°

// q ν‚€λ₯Ό λˆ„λ₯΄λ©΄ λ™μž‘ν•˜λŠ” ν•¨μˆ˜
// ν•œ 번 λˆ„λ₯΄λ©΄ λΉ„λ„€νŒ… νš¨κ³Όκ°€ μΌœμ§€κ³ , 두 번 λˆ„λ₯΄λ©΄ λΉ„λ„€νŒ… νš¨κ³Όκ°€ 꺼짐
// App.addOnKeyDown μ„€λͺ…
App.addOnKeyDown(81,function(p){
	if(App.cameraEffect == 0){
		App.cameraEffect = 1; // 1 = λΉ„λ„€νŒ… 효과
		App.cameraEffectParam1 = 500; // λΉ„λ„€νŒ… 효과의 λ²”μœ„λ₯Ό 500으둜 지정
	}
	else if(App.cameraEffect == 1){
		App.cameraEffect = 0; // λΉ„λ„€νŒ… 효과 끄기
	}
	App.sendUpdated(); // μ•±μ˜ Field값이 λ³€κ²½λ˜λ©΄ App.sendUpdated()둜 변경값을 적용
})

displayRatio

App.displayRatio

ν™”λ©΄μ˜ μ€Œμ„ 컨트둀 ν•˜λŠ” κ°’ ( κΈ°λ³Έ κ°’: 1 )

예제

ν™”λ©΄μ˜ μ€Œμ„ 컨트둀 ν•˜λŠ” ν‚€ λ§Œλ“€μ–΄λ³΄κΈ°

// q ν‚€λ₯Ό λˆ„λ₯΄λ©΄ λ™μž‘ν•˜λŠ” ν•¨μˆ˜
// ν•œ 번 λˆ„λ₯΄λ©΄ ν™”λ©΄μ˜ 쀌 값이 컀지고, ν•œ 번 더 λˆ„λ₯΄λ©΄ μ›λž˜λŒ€λ‘œ λŒμ•„μ˜€λŠ” ν‚€ ν•¨μˆ˜ 
// App.addOnKeyDown μ„€λͺ…
App.addOnKeyDown(81,function(p){
	if(App.displayRatio == 1){
		App.displayRatio = 5;
	}else{
		App.displayRatio = 1;
	}
	App.sendUpdated(); //* μ•±μ˜ Field값이 λ³€κ²½λ˜λ©΄ App.sendUpdated()둜 변경값을 적용
})

storage

App.storage: String

슀페이슀 λ‚΄μ˜ App λ°μ΄ν„°μ˜ μ €μž₯곡간 μž…λ‹ˆλ‹€ (슀페이슀 ν•œμ •)

예제

Storage νŽ˜μ΄μ§€λ₯Ό μ°Έκ³ ν•΄μ£Όμ„Έμš”

followPlayer

App.followPlayer: Boolean

App의 따라가기 κΈ°λŠ₯ ν™œμ„±ν™” μ—¬λΆ€ κ°’ μž…λ‹ˆλ‹€. ( κΈ°λ³Έ κ°’ : false )

λ…Έλ©€ μ•±, λ―Έλ‹ˆκ²Œμž„ 앱이 μ‹€ν–‰ 쀑인 경우 followPlayer 값이 false둜 μ„€μ •λ˜μ–΄ β€˜λ”°λΌκ°€κΈ°β€™ κΈ°λŠ₯이 λΉ„ν™œμ„±ν™”λ©λ‹ˆλ‹€.

예제

따라가기 κΈ°λŠ₯을 끄고 ν‚€λŠ” ν•¨μˆ˜ λ§Œλ“€μ–΄λ³΄κΈ°

// q ν‚€λ₯Ό λˆ„λ₯΄λ©΄ λ™μž‘ν•˜λŠ” ν•¨μˆ˜
// followPlayer 값을 λ°”κΎΈλŠ” ν‚€ ν•¨μˆ˜
App.addOnKeyDown(81,function(p){
	if(App.followPlayer){
		App.followPlayer = false;
	}else{
		App.followPlayer = true;
	}
	App.sayToAll(`App.followPlayer: ${App.followPlayer}`)
	App.sendUpdated(); //* μ•±μ˜ Field값이 λ³€κ²½λ˜λ©΄ App.sendUpdated()둜 변경값을 적용
})

showName

App.showName: Boolean

ν”Œλ ˆμ΄μ–΄ λ‹‰λ„€μž„ μˆ¨κΉ€ μ—¬λΆ€

App.showName 을 false둜 μ„€μ •ν•˜λ©΄ λͺ¨λ“  ν”Œλ ˆμ΄μ–΄μ˜ λ‹‰λ„€μž„μ΄ μˆ¨κΉ€ μ²˜λ¦¬λ©λ‹ˆλ‹€.

예제

// q ν‚€λ₯Ό λˆ„λ₯΄λ©΄ λ™μž‘ν•˜λŠ” ν•¨μˆ˜
// showName 값을 λ°”κΎΈλŠ” ν‚€ ν•¨μˆ˜
App.addOnKeyDown(81,function(p){
	if(App.showName){
		App.showName = false;
	}else{
		App.showName = true;
	}
	App.sayToAll(`App.showName: ${App.showName}`)
	App.sendUpdated(); //* μ•±μ˜ Field값이 λ³€κ²½λ˜λ©΄ App.sendUpdated()둜 변경값을 적용
})

appHashID

App.appHashID: String

μ•±μ˜ HashIDλ₯Ό κ°€μ Έμ˜΅λ‹ˆλ‹€.

예제

μ±„νŒ…μ°½μ—μ•±μ˜ HashID 좜λ ₯ν•˜κΈ°

// ν”Œλ ˆμ΄μ–΄κ°€ μž…μž₯ν•  λ•Œ λ™μž‘ν•˜λŠ” ν•¨μˆ˜
App.onJoinPlayer.Add(function(player){
	App.sayToAll(`appHashID: ${App.appHashID}`); 
})

enableFreeView

App.enableFreeView

앱이 μ„€μΉ˜λœ 맡의 λ‘˜λŸ¬λ³΄κΈ° ν—ˆμš© μ—¬λΆ€λ₯Ό μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

예제

λ‹¨μΆ•ν‚€λ‘œ 맡 λ‘˜λŸ¬λ³΄κΈ° ν—ˆμš© μ—¬λΆ€ μ„€μ •ν•˜κΈ°

// Qλ₯Ό λˆ„λ₯΄λ©΄ λ™μž‘ν•˜λŠ” ν•¨μˆ˜
App.addOnKeyDown(81, function (player) {
	if (App.enableFreeView) {
		App.enableFreeView = false;
	} else {
		App.enableFreeView = true;
	}
	App.sendUpdated();
	player.sendMessage(`App.enableFreeView = ${App.enableFreeView}`, 0x00ffff);
});


뢀둝

μŠ€νŽ˜μ΄μŠ€μ™€ 맡 μ΄ν•΄ν•˜κΈ°

Last updated