⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 npc_gvg_steward.txt

📁 JA++的最新...很多ROSF都用这个 ] 是个不错的东西-3-
💻 TXT
📖 第 1 页 / 共 2 页
字号:
//=========================================================================
// 管理人的全部函数
//	callfunc "StewardMain","AgitCode",MasterRoomX,MasterRoomY;
//
// ■ parse结束处理
//	里面全部使用close指令,它带有end指令的效果。但也可以自行在后面添加end指令
//
// ■ function
//	「设置监护人」的时候调用 function "GuardianCall"
//	「让出秘密基地」的时候调用 function "AgitGiveUp" (npc_gvg_monster.txt)
//
//  ※ NPC名字用strnpcinfo()取得、NPC所在的MAP使用getmapxy()取得
// 汉化和修正 : FPE
// Jathena++ 论坛:http://www.foxofice.net/bbs
//-------------------------------------------------------------------------

function	script	StewardMain	{
	//问候部分
	function StewardSpeech {
		set '@dummy,getmapxy('@map$,'@dummy,'@dummy,1);		//'@map$以外的都是虚设的
		set '@gid,getcastledata('@map$,1);
		if('@gid <= 0) {
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "我将依据我的命运";
			mes "在等待我的主人。";
			mes "勇士啊…";
			mes "试验一下你的命运吧。";
			close;
		}
		if(getcharid(0) != getguildmasterid('@gid)) {
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "不管你们怎么威胁我";
			mes "我只愿意追随我的主人^ff0000" +getguildmaster('@gid);
			mes "^000000监护人你们在哪里呀!";
			mes "赶快把这个无理的家伙赶走吧!";
			close;
		}
		mes "[管理人"+strnpcinfo(0)+"]";
		mes "欢迎光临,我的主人 ^ff0000" +strcharinfo(0)+ "^000000 先生/小姐。";
		mes "请尽管吩咐,我将忠诚地为您完成任务。";
		next;
		return;
	}

	//查看秘密基地状况
	function StewardConf {
		set '@dummy,getmapxy('@map$,'@dummy,'@dummy,1);
		mes "[管理人"+strnpcinfo(0)+"]";
		mes "现在向您报告秘密基地的状况。";
		mes " ";
		mes "^0000ff现在商业发展度是" +getcastledata('@map$,2)+ "。";
		if(getcastledata('@map$,4) != 0)
			mes "- 在过去1天之内,投资了 " +getcastledata('@map$,4)+ " 次。";
		mes "現在の防御値は" +getcastledata('@map$,3)+ " です。^000000";
		if(getcastledata('@map$,5) != 0)
			mes "^0000ff- 在过去1天之内,投资了 " +getcastledata('@map$,5)+ " 次。^000000";
		mes " ";
		mes "报告完毕。";
		return;
	}

	//投资商业发展度
	function StewardEco {
		set '@dummy,getmapxy('@map$,'@dummy,'@dummy,1);
		mes "[管理人"+strnpcinfo(0)+"]";
		mes "提高商业发展度的话";
		mes "在工会里生产的物品数量会增加";
		mes "为了以后着想的话";
		mes "不能不投资啊。";
		next;
		mes "[管理人"+strnpcinfo(0)+"]";
		mes "照原先的方式,一天只能投资一次";
		mes "假如多付一点金钱的话";
		mes "一天可以投资两次。";
		next;
		set '@count,getcastledata('@map$,4);
		if('@count == 2) {
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "^ff0000可是您已经在今天之内投资了两次";
			mes "再不能投资了。";
			mes "^000000让发展度赶快上升";
			mes "期待着富贵的日子啰。";
			close;
		}
		set '@val,getcastledata('@map$,2);
		if('@val == 100) {	//未调查
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "^ff0000现在的发展度已经是最大值了。";
			mes "^000000所以不需要再投资了。";
		 	close;
		}
		set '@tmp,('@val-'@count)/5;
		set '@price,5000*(1+(1+'@tmp)*'@tmp/2)*(1+3*'@count);
		switch('@count) {
		case 0:
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "现在需要的投资金额是";
			mes "^ff0000" +'@price+ "^000000 Zeny";
			mes "请问您要投资吗?";
			break;
		case 1:
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "现在您已经投资了一次";
			mes "还要再投资吗?";
			mes "需要花费 ^ff0000" +'@price+ "^000000 Zeny";
			break;
		}
		next;
		if(select("对商业发展度投资","取消")==2) {
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "我明白了。";
			mes "不需要太着急的。";
			mes "有什么要求可以随时告诉我。";
			close;
		}
		if(Zeny < '@price) {	//未调查
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "主人!";
			mes "没有足够的金额进行投资。";
			mes "投资被迫取消了。";
			close;
		}
		set Zeny,Zeny-'@price;
		setcastledata '@map$,4,'@count+1;
		mes "[管理人"+strnpcinfo(0)+"]";
		mes "顺利地完成投资了!";
		mes "今后的日子将会越来越快乐。";
		mes "从明天开始发展度会上升的。";
		return;
	}

	//投资防御度
	function StewardDef {
		set '@dummy,getmapxy('@map$,'@dummy,'@dummy,1);
		mes "[管理人"+strnpcinfo(0)+"]";
		mes "提高防御力的话";
		mes "监护人和华丽金属的耐久度会增加。";
		mes "考虑到以后的战争";
		mes "加强防御度才是上策。";
		next;
		mes "[管理人"+strnpcinfo(0)+"]";
		mes "照原先的方式,一天只能投资一次";
		mes "假如多付一点金钱的话";
		mes "一天可以投资两次。";
		next;
		set '@count,getcastledata('@map$,5);
		if('@count == 2) {
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "^ff0000可是你已经在今天之内投资了两次";
			mes "再不能投资了。";
			mes "^000000期待防御度的加强。";
			close;
		}
		set '@val,getcastledata('@map$,3);
		if('@val == 100) {	//未调查
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "^ff0000现在防御度已经是100%了。";
			mes "^000000所以不需要再投资了。";
			close;
		}
		set '@tmp,('@val-'@count)/5;
		set '@price,10000*(1+(1+'@tmp)*'@tmp/2)*(1+3*'@count);
		switch('@count) {
		case 0:
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "现在需要的投资金额是^ff0000" +'@price+ "^000000 Zeny";
			mes "请问您要投资吗?";
			break;
		case 1:
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "现在您已经投资了一次";
			mes "还要再投资吗?";
			mes "需要花费 ^ff0000" +'@price+ "^000000 Zeny";
			break;
		}
		next;
		if(select("对防御度投资","取消")==2) {
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "我明白了。";
			mes "不需要太着急的。";
			mes "有什么要求可以随时告诉我。";
			close;
		}
		if(Zeny < '@price) {	//未调查
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "主人!";
			mes "没有足够的金额进行投资。";
			mes "投资被迫取消了。";
			close;
		}
		set Zeny,Zeny-'@price;
		setcastledata '@map$,5,'@count+1;
		mes "[管理人"+strnpcinfo(0)+"]";
		mes "顺利地完成投资了!";
		mes "今后的日子将会越来越快乐。";
		mes "从明天开始防御度会上升的。";
		return;
	}

	//设置监护人
	function StewardGuard {
		set '@dummy,getmapxy('@map$,'@dummy,'@dummy,1);
		mes "[管理人"+strnpcinfo(0)+"]";
		mes "请问要设置监护人吗?";
		mes "监护人即将成为";
		mes "我们秘密基地的忠诚守护者。";
		mes "请选择要设置的监护人。";
		next;
		//实际的Menu(参考B5)
		//menu 	"弓箭手 监护人 - 未设置",L_MENU_1,"弓箭手 监护人 - 未设置",L_MENU_2,
		//	"士兵 监护人 - 未设置",L_MENU_3,"士兵 监护人 - 未设置",L_MENU_4,
		//	"骑士 监护人 - 未设置",L_MENU_5,"士兵 监护人 - 未设置",L_MENU_6,
		//	"骑士 监护人 - 未设置",L_MENU_7,"首领 监护人 - 未设置 (31214 / 31214)",L_MENU_8;
		//
		//設置できるか出来ないかの表示と、居た場合HPが表示される。
		//また、居た場合でも設置動作可能であり、その場合HPを回復させることが出来る。
		set '@ret,select("监护人 1","监护人 2","监护人 3","监护人 4","监护人 5","监护人 6","监护人 7","监护人 8")+9;
		if(getcastledata('@map$,'@ret)) {
			mes "[管理人"+strnpcinfo(0)+"]";	//未调查
			mes "主人!";
			mes "那里已经设置监护人了。";
			mes " ";
			mes "设置监护人被迫取消了。";
			close;
		}
		mes "[管理人"+strnpcinfo(0)+"]";
		mes "确定要设置已选择的监护人吗?";
		mes "设置时需要^ff0000 10000 ^000000Zeny";
		next;
		if(select("设置","取消")==2) {
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "明白了。";
			mes "假如有点资金上宽裕的话";
			mes "设置监护人才是上策。";
			close;
		}
		if(getgdskilllv(getcharid(2),GD_GUARDIANRESEARCH) == 0) {
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "主人…有关设置监护人的研究知识";
			mes "我们全然不知唷。";
			mes "想要累积设置监护人知识的话";
			mes "必须要学习工会技能中的。";
			mes "^ff0000监护人制作研究";
			close;
		}
		if(Zeny < 10000) {	//未調査
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "主人!";
			mes "没有足够的金额进行投资。";
			mes "投资被迫取消了。";
			close;
		}
		set Zeny,Zeny-10000;
		setcastledata '@map$,'@ret,1;
		callfunc "GuardianCall",getarg(0),'@ret,1;	//召唤监护人(npc_gvg_monster.txt)
		return;
	}

	//雇用·解雇卡普拉职员
	function StewardKafra {
		set '@dummy,getmapxy('@map$,'@dummy,'@dummy,1);
		if(getcastledata('@map$,9)==0) {
			mes "[管理人"+strnpcinfo(0)+"]";
			mes "和卡普拉总公司订契约后,";
			mes "要在秘密基地里面,雇用卡普拉职员吗?";
			mes "雇用时需要^ff0000 10000 ^000000Zeny…";
			next;
			if(select("雇用","取消")==2) {
				mes "[管理人"+strnpcinfo(0)+"]";
				mes "明白了。";

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -