冒险岛中cm.getText()方法通常是用来从前一个可输入文本的对话框中获取文本,可输入文本的对话框例如:
cm.sendGetText("请在此输入文本:");
这条语句的效果是NPC弹出的对话框中包含提示信息“请在此输入文本:”,并且下方提供一个可以输入的文本框,类似窗体程序的TextBox。
以下举例说明,例子为创建与使用金币(Meso)购买经验的(Exp)的NPC的对话。
var status;
function start() { //常规的NPC对话开启方法
status = -1;
action(1, 0, 0);
}
function action(mode, type, selection) {
if (mode == -1) {
cm.dispose();
return;
} else {
if (mode == 0) {
cm.dispose();
}
if (mode == 1)
status++;
else
status--;
if (status == 0) {
cm.sendGetText("请输入需要购买的经验值,兑换比例为10(金币):1(经验)。");
} else if (status == 1) {
if (cm.getMeso() < cm.getText() * 10) {
cm.sendOk("对不起你没有足够的金币兑换" + cm.getText() + "经验值。");
cm.dispose();
} else {
cm.gainExp(cm.getText());
cm.gainMeso(-cm.getText() * 10);
cm.dispose();
}
}
}
类似cm.sendNext()或者cm.sendYesNo()方法,cm.sendGetText()方法在确认输入后将状态(status)增加1。
cm.getText()方法从前一个可输入文本的对话框中获取玩家输入的信息,在案例中为玩家输入的需要购买的经验值。