https://kibkibe.github.io/roll20/
Roll20 API Scripts by YANGSALTRoll20에서 사용가능한 여러 API 스크립트를 손쉽게 통합하고 편집하여 사용할 수 있도록 지원합니다. by 양천일염kibkibe.github.io여기 거 약간 수정한 코드
기존 as_selector.js는 플레이어가 조종권을 가진 캐릭터는 명령어로 선택할 수 없어서
시트를 플레이어들에게 공개한 NPC를 RP하는 데 애로사항이 있었다
정확하게 그 부분만 조금 손봤음
되게 편한 API라고 생각하는데 나처럼 시트 공개한 NPC 때문에 골머리 앓던 사람 있을까봐 올려봄
배포 관련해서 문제 생기면 이 게시글 지움
==
on("chat:message", function(msg){
if (msg.type == "api"){
// on.chat:message:api
if (msg.content.startsWith('!!')) {
const player = getObj('player', msg.playerid);
const keyword = msg.content.replace('!!', '');
let cha = filterObjs(function(obj){
return (obj.get('type') == 'character' &&
obj.get('name').includes(keyword) &&
(playerIsGM(msg.playerid) || obj.get('controlledby') == 'all'));
// 수정한 부분: 플레이어에게 조종권이 있는 캐릭터도 선택할 수 있도록 수정
});
if (cha.length > 0) {
let nearestIndex = 9999;
let lastCheckedIdx = 0;
for (let i = 0; i < cha.length; i++) {
const idx = cha[i].get('name').indexOf(keyword);
if (idx < nearestIndex) {
nearestIndex = idx;
lastCheckedIdx = i;
}
}
player.set('speakingas', 'character|' + cha[lastCheckedIdx].get('_id'));
}
}
// /on.chat:message:api
}
});
이거 쓰다보면 로그에서 캐릭터 구분 이상해지던데 그건 못 수정하나
그건 나도 원인을 잘 모르겠음
오 이따써봐야지 좋다
수고햇엉 추천이야