LlGetAgentLanguage/ko

From Second Life Wiki
Jump to navigation Jump to search

설명

! 함수: string llGetAgentLanguage( key avatar );
336 함수ID
0.0 지연
10.0 에너지

반환되는 값은 사용자 avatar가 설정한 사이틀(interface) 언어의 코드값.

• key avatar 같은 구역에 있는 아바타의 UUID
Return Description
"de" 독일어
"en-us" 영어(미국)
"es" 스페인어
"fr" 프랑스어
"ja" 일본어
"pt" 포르투갈어
"ko" 한국어
"zh" 중국어

주의

  • 만약 사용자가 "Share language with objects"를 해제한다면 함수는 빈 문자열을 반환할 것이다.
  • 사용자는 자신의 모국어가 아닌 클라이언트 사이틀을 선호할 수도 있고, 제작자의 모국어로 된 물체를 사용하고 싶어하거나, 혹은 낮은 수준의 번역에 만족하지 않을 수도 있다. 적절한 때에 언어 덮어쓰기를 제공하는 것도 고려해볼 수 있다.
  • 새로운 언어들과 그에 따른 설정 값들도 이후에 추가될 것이다. 따라서 스크립트는 현재 시점에서는 예상하지 못하는 값의 출력도 고려해서 작성되어야 한다.

예제

<lsl>default {

   state_entry() {
   }
   touch_start(integer n) {
       integer i;
       for(i=0;i<n;i++) {
           string name=llDetectedName(i);
           string lang=llGetAgentLanguage(llDetectedKey(i));
           if(lang=="") lang="en-us"; // Default to English.
           if(lang=="en-us") {
               llSay(0,"Hi there, "+name+"!");
           }else if(lang=="es") {
               llSay(0,"¡Hola, "+name+"!");
           }else if(lang=="fr") {
               llSay(0,"Salut, "+name+" !");
           }else if(lang=="ja") {
               llSay(0,"やあ、 "+name+"!");
           }else if(lang=="de") {
               llSay(0,"Hallo, "+name+"!");
           }else if(lang=="pt") {
               llSay(0,"Olá!, "+name+"!");
           }else if(lang=="ko") {
               llSay(0,"안녕하세요, "+name+"!");
           }else if(lang=="zh") {
               llSay(0,"你好啊, "+name+"!");
           }
       }
   }

} </lsl>

상세 기록

이력

쟁점

   [Won't Fix] llGetAgentLanguage() returns "en", not "en-us" -- Bug or (new) feature?
이 글이 유용하지 않으세요? LSL Wiki의 관련항목이 도움을 줄 수 있을 지도 모릅니다.