Diff
checker
文本
文本
图像
文档
Excel
文件夹
Legal
Enterprise
桌面版
定价
登录
下载 Diffchecker 桌面版
比较文本
查找两个文本文件之间的差异
工具
历史
实时编辑器
折叠未更改行
关闭换行
视图
拆分
统一
比对精度
智能
单词
字符
语法高亮
选择语法
忽略
文本转换
转到第一个差异
编辑输入
Diffchecker Desktop
运行Diffchecker最安全的方式。获取Diffchecker桌面应用:您的差异永远不会离开您的电脑!
获取桌面版
points2item alternate version
创建于
3年前
差异永不过期
清除
导出
分享
解释
38 删除
行
总计
删除
字符
总计
删除
要继续使用此功能,请升级到
Diff
checker
Pro
查看价格
143 行
全部复制
37 添加
行
总计
添加
字符
总计
添加
要继续使用此功能,请升级到
Diff
checker
Pro
查看价格
143 行
全部复制
/*=========================================================
/*=========================================================
Points to Item Exchanger
Points to Item Exchanger
by Mumbles
by Mumbles
===========================================================
===========================================================
复制
已复制
复制
已复制
Request: http
://goo.gl/MplDtF
Request: http
s://shorturl.at/cnsy3
===========================================================
Preview: http://youtu.be/V-6ahRLqRi4
===========================================================
===========================================================
Description:
Description:
Exchanges items for points and vice-versa at a fixed rate.
Exchanges items for points and vice-versa at a fixed rate.
===========================================================
===========================================================
Compatibility:
Compatibility:
Optimised for Hercules emulators.
Optimised for Hercules emulators.
===========================================================
===========================================================
Changelog:
Changelog:
v1.0 - First version.
v1.0 - First version.
v1.0.1 - Added changelog.
v1.0.1 - Added changelog.
复制
已复制
复制
已复制
v1.0a - Alternate version; uses PoDs instead of points for
base-1 when converting.
=========================================================*/
=========================================================*/
prontera,164,169,3 script Donation Manager::points2item 4_M_OPERATION,{
prontera,164,169,3 script Donation Manager::points2item 4_M_OPERATION,{
/*-----------------------------------------------------
/*-----------------------------------------------------
Script
Script
-----------------------------------------------------*/
-----------------------------------------------------*/
mes .npc_name$;
mes .npc_name$;
mes "Hello there, ^FF8800"+ strcharinfo(0) +"^000000! "+
mes "Hello there, ^FF8800"+ strcharinfo(0) +"^000000! "+
复制
已复制
复制
已复制
"Would you exchange your "+ .
pod
_name$ +" "+
"Would you exchange your "+ .
points
_name$ +" "+
"for "+ .
points
_name$ +"?";
"for "+ .
pod
_name$ +"?";
mes " ";
mes " ";
mes "Exchange Rate: "+ .rate +":1";
mes "Exchange Rate: "+ .rate +":1";
mes .points_name$ +": [^FF0000"+ getd(.points_var$) +"^000000]";
mes .points_name$ +": [^FF0000"+ getd(.points_var$) +"^000000]";
next;
next;
switch (select(implode(.menu_options$, ":"))) {
switch (select(implode(.menu_options$, ":"))) {
case 1:
case 1:
mes .npc_name$;
mes .npc_name$;
mes "Okay, come back if you change your mind!";
mes "Okay, come back if you change your mind!";
break;
break;
case 2:
case 2:
mes .npc_name$;
mes .npc_name$;
复制
已复制
复制
已复制
mes "Please enter the amount of "+ .
pod
_name$ +"
you want to exchange.";
mes "Please enter the amount of "+ .
points
_name$ +"
that
you want to exchange.";
do {
do {
mes " ";
mes " ";
mes "Input ^0000FF0^000000 to cancel.";
mes "Input ^0000FF0^000000 to cancel.";
next;
next;
input .@amount;
input .@amount;
.@total = .@amount / .rate;
.@total = .@amount / .rate;
.@remainder = .@amount % .rate;
.@remainder = .@amount % .rate;
// Check break input
// Check break input
if (!.@amount) {
if (!.@amount) {
message strcharinfo(0), strnpcinfo(1) +" : Exchange terminated.";
message strcharinfo(0), strnpcinfo(1) +" : Exchange terminated.";
close;
close;
}
}
复制
已复制
复制
已复制
// Check
total
against
inventory
// Check
amount
against
points
if (
countitem(.pod_id
) < .@amount) {
if (
getd(.points_var$
) < .@amount) {
mes .npc_name$;
mes .npc_name$;
mes "^FF0000Please enter a valid amount.^000000";
mes "^FF0000Please enter a valid amount.^000000";
}
}
// Check remainder [loss prevention]
// Check remainder [loss prevention]
else if (.@remainder) {
else if (.@remainder) {
mes .npc_name$;
mes .npc_name$;
mes "Sorry, but you must exchange multiples of "+ .rate +".";
mes "Sorry, but you must exchange multiples of "+ .rate +".";
}
}
复制
已复制
复制
已复制
} while (
countitem(.pod_id
) < .@amount || .@remainder);
} while (
getd(.points_var$
) < .@amount || .@remainder);
复制
已复制
复制
已复制
Text moved from lines 105-110
delitem .pod_id, .@amount;
// Check weight
setd .points_var$, getd(.points_var$)
+
.@total;
if (!checkweight(.pod_id, .@total)) {
mes .npc_name$;
mes "^FF0000You're overweight; please store some items.^000000";
break;
}
setd .points_var$, getd(.points_var$)
- .@amount;
getitem .pod_id,
.@total;
mes .npc_name$;
mes .npc_name$;
复制
已复制
复制
已复制
mes "You've exchanged "+ .@amount +" "+ .
pod
_name$ +" for "+ .@total +" "+ .
points
_name$ +". "+
mes "You've exchanged "+ .@amount +" "+ .
points
_name$ +" for "+ .@total +" "+ .
pod
_name$ +". "+
"You now have "+ getd(.points_var$) +" "+ .points_name$ +" and "+ countitem(.pod_id) +" "+ .pod_name$ +".";
"You now have "+ getd(.points_var$) +" "+ .points_name$ +" and "+ countitem(.pod_id) +" "+ .pod_name$ +".";
break;
break;
case 3:
case 3:
mes .npc_name$;
mes .npc_name$;
复制
已复制
复制
已复制
mes "Please enter the amount of "+ .
points
_name$ +"
that
you want to exchange.";
mes "Please enter the amount of "+ .
pod
_name$ +"
you want to exchange.";
do {
do {
mes " ";
mes " ";
mes "Input ^0000FF0^000000 to cancel.";
mes "Input ^0000FF0^000000 to cancel.";
next;
next;
input .@amount;
input .@amount;
.@total = .@amount * .rate;
.@total = .@amount * .rate;
// Check break input
// Check break input
if (!.@amount) {
if (!.@amount) {
message strcharinfo(0), strnpcinfo(1) +" : Exchange terminated.";
message strcharinfo(0), strnpcinfo(1) +" : Exchange terminated.";
close;
close;
}
}
复制
已复制
复制
已复制
// Check
amount
against
points
// Check
total
against
inventory
if (
getd(.points_var$
) < .@amount) {
if (
countitem(.pod_id
) < .@amount) {
mes .npc_name$;
mes .npc_name$;
mes "^FF0000Please enter a valid amount.^000000";
mes "^FF0000Please enter a valid amount.^000000";
}
}
复制
已复制
复制
已复制
} while (
getd(.points_var$
) < .@amount);
} while (
countitem(.pod_id
) < .@amount);
Text moved to lines 72-77
// Check weight
if (!checkweight(.pod_id, .@total)) {
mes .npc_name$;
mes "^FF0000You're overweight; please store some items.^000000";
break;
}
复制
已复制
复制
已复制
setd .points_var$, getd(.points_var$)
- .@amount;
delitem .pod_id, .@amount;
getitem .pod_id,
.@total;
setd .points_var$, getd(.points_var$)
+
.@total;
mes .npc_name$;
mes .npc_name$;
复制
已复制
复制
已复制
mes "You've exchanged "+ .@amount +" "+ .
points
_name$ +" for "+ .@total +" "+ .
pod
_name$ +". "+
mes "You've exchanged "+ .@amount +" "+ .
pod
_name$ +" for "+ .@total +" "+ .
points
_name$ +". "+
"You now have "+ getd(.points_var$) +" "+ .points_name$ +" and "+ countitem(.pod_id) +" "+ .pod_name$ +".";
"You now have "+ getd(.points_var$) +" "+ .points_name$ +" and "+ countitem(.pod_id) +" "+ .pod_name$ +".";
break;
break;
}
}
close;
close;
/*-----------------------------------------------------
/*-----------------------------------------------------
Configuration
Configuration
-----------------------------------------------------*/
-----------------------------------------------------*/
OnInit:
OnInit:
.npc_name$ = "[^0000FFDonation Manager^000000]";
.npc_name$ = "[^0000FFDonation Manager^000000]";
复制
已复制
复制
已复制
.rate =
20
; // Exchange rate (1 point * rate =
total
PoD
s
)
.rate =
10
; // Exchange rate (1 point * rate =
1
PoD
)
.pod_id = Donation_Card; // Proof of Donation item ID or constant
.pod_id = Donation_Card; // Proof of Donation item ID or constant
.pod_name$ = getitemname(.pod_id) +"(s)"; // Proof of Donation item name
.pod_name$ = getitemname(.pod_id) +"(s)"; // Proof of Donation item name
.points_name$ = "Cash Point(s)"; // Points name
.points_name$ = "Cash Point(s)"; // Points name
.points_var$ = "#CASHPOINTS"; // Points variable
.points_var$ = "#CASHPOINTS"; // Points variable
// Modifying these options requires updates to the corresponding case
// Modifying these options requires updates to the corresponding case
setarray .menu_options$[0], "^FF0000>^000000 Cancel",
setarray .menu_options$[0], "^FF0000>^000000 Cancel",
复制
已复制
复制
已复制
"^0000FF>^000000 Exchange "+ .pod_name$ +" for "+ .points_name$,
"^0000FF>^000000 Exchange "+ .points_name$ +" for "+ .pod_name$
,
"^0000FF>^000000 Exchange "+ .points_name$ +" for "+ .pod_name$
;
"^0000FF>^000000 Exchange "+ .pod_name$ +" for "+ .points_name$
;
end;
end;
}
}
已保存差异
原始文本
打开文件
/*========================================================= Points to Item Exchanger by Mumbles =========================================================== Request: http://goo.gl/MplDtF =========================================================== Preview: http://youtu.be/V-6ahRLqRi4 =========================================================== Description: Exchanges items for points and vice-versa at a fixed rate. =========================================================== Compatibility: Optimised for Hercules emulators. =========================================================== Changelog: v1.0 - First version. v1.0.1 - Added changelog. =========================================================*/ prontera,164,169,3 script Donation Manager::points2item 4_M_OPERATION,{ /*----------------------------------------------------- Script -----------------------------------------------------*/ mes .npc_name$; mes "Hello there, ^FF8800"+ strcharinfo(0) +"^000000! "+ "Would you exchange your "+ .pod_name$ +" "+ "for "+ .points_name$ +"?"; mes " "; mes "Exchange Rate: "+ .rate +":1"; mes .points_name$ +": [^FF0000"+ getd(.points_var$) +"^000000]"; next; switch (select(implode(.menu_options$, ":"))) { case 1: mes .npc_name$; mes "Okay, come back if you change your mind!"; break; case 2: mes .npc_name$; mes "Please enter the amount of "+ .pod_name$ +" you want to exchange."; do { mes " "; mes "Input ^0000FF0^000000 to cancel."; next; input .@amount; .@total = .@amount / .rate; .@remainder = .@amount % .rate; // Check break input if (!.@amount) { message strcharinfo(0), strnpcinfo(1) +" : Exchange terminated."; close; } // Check total against inventory if (countitem(.pod_id) < .@amount) { mes .npc_name$; mes "^FF0000Please enter a valid amount.^000000"; } // Check remainder [loss prevention] else if (.@remainder) { mes .npc_name$; mes "Sorry, but you must exchange multiples of "+ .rate +"."; } } while (countitem(.pod_id) < .@amount || .@remainder); delitem .pod_id, .@amount; setd .points_var$, getd(.points_var$) + .@total; mes .npc_name$; mes "You've exchanged "+ .@amount +" "+ .pod_name$ +" for "+ .@total +" "+ .points_name$ +". "+ "You now have "+ getd(.points_var$) +" "+ .points_name$ +" and "+ countitem(.pod_id) +" "+ .pod_name$ +"."; break; case 3: mes .npc_name$; mes "Please enter the amount of "+ .points_name$ +" that you want to exchange."; do { mes " "; mes "Input ^0000FF0^000000 to cancel."; next; input .@amount; .@total = .@amount * .rate; // Check break input if (!.@amount) { message strcharinfo(0), strnpcinfo(1) +" : Exchange terminated."; close; } // Check amount against points if (getd(.points_var$) < .@amount) { mes .npc_name$; mes "^FF0000Please enter a valid amount.^000000"; } } while (getd(.points_var$) < .@amount); // Check weight if (!checkweight(.pod_id, .@total)) { mes .npc_name$; mes "^FF0000You're overweight; please store some items.^000000"; break; } setd .points_var$, getd(.points_var$) - .@amount; getitem .pod_id, .@total; mes .npc_name$; mes "You've exchanged "+ .@amount +" "+ .points_name$ +" for "+ .@total +" "+ .pod_name$ +". "+ "You now have "+ getd(.points_var$) +" "+ .points_name$ +" and "+ countitem(.pod_id) +" "+ .pod_name$ +"."; break; } close; /*----------------------------------------------------- Configuration -----------------------------------------------------*/ OnInit: .npc_name$ = "[^0000FFDonation Manager^000000]"; .rate = 20; // Exchange rate (1 point * rate = total PoDs) .pod_id = Donation_Card; // Proof of Donation item ID or constant .pod_name$ = getitemname(.pod_id) +"(s)"; // Proof of Donation item name .points_name$ = "Cash Point(s)"; // Points name .points_var$ = "#CASHPOINTS"; // Points variable // Modifying these options requires updates to the corresponding case setarray .menu_options$[0], "^FF0000>^000000 Cancel", "^0000FF>^000000 Exchange "+ .pod_name$ +" for "+ .points_name$, "^0000FF>^000000 Exchange "+ .points_name$ +" for "+ .pod_name$; end; }
更改后文本
打开文件
/*========================================================= Points to Item Exchanger by Mumbles =========================================================== Request: https://shorturl.at/cnsy3 =========================================================== Description: Exchanges items for points and vice-versa at a fixed rate. =========================================================== Compatibility: Optimised for Hercules emulators. =========================================================== Changelog: v1.0 - First version. v1.0.1 - Added changelog. v1.0a - Alternate version; uses PoDs instead of points for base-1 when converting. =========================================================*/ prontera,164,169,3 script Donation Manager::points2item 4_M_OPERATION,{ /*----------------------------------------------------- Script -----------------------------------------------------*/ mes .npc_name$; mes "Hello there, ^FF8800"+ strcharinfo(0) +"^000000! "+ "Would you exchange your "+ .points_name$ +" "+ "for "+ .pod_name$ +"?"; mes " "; mes "Exchange Rate: "+ .rate +":1"; mes .points_name$ +": [^FF0000"+ getd(.points_var$) +"^000000]"; next; switch (select(implode(.menu_options$, ":"))) { case 1: mes .npc_name$; mes "Okay, come back if you change your mind!"; break; case 2: mes .npc_name$; mes "Please enter the amount of "+ .points_name$ +" that you want to exchange."; do { mes " "; mes "Input ^0000FF0^000000 to cancel."; next; input .@amount; .@total = .@amount / .rate; .@remainder = .@amount % .rate; // Check break input if (!.@amount) { message strcharinfo(0), strnpcinfo(1) +" : Exchange terminated."; close; } // Check amount against points if (getd(.points_var$) < .@amount) { mes .npc_name$; mes "^FF0000Please enter a valid amount.^000000"; } // Check remainder [loss prevention] else if (.@remainder) { mes .npc_name$; mes "Sorry, but you must exchange multiples of "+ .rate +"."; } } while (getd(.points_var$) < .@amount || .@remainder); // Check weight if (!checkweight(.pod_id, .@total)) { mes .npc_name$; mes "^FF0000You're overweight; please store some items.^000000"; break; } setd .points_var$, getd(.points_var$) - .@amount; getitem .pod_id, .@total; mes .npc_name$; mes "You've exchanged "+ .@amount +" "+ .points_name$ +" for "+ .@total +" "+ .pod_name$ +". "+ "You now have "+ getd(.points_var$) +" "+ .points_name$ +" and "+ countitem(.pod_id) +" "+ .pod_name$ +"."; break; case 3: mes .npc_name$; mes "Please enter the amount of "+ .pod_name$ +" you want to exchange."; do { mes " "; mes "Input ^0000FF0^000000 to cancel."; next; input .@amount; .@total = .@amount * .rate; // Check break input if (!.@amount) { message strcharinfo(0), strnpcinfo(1) +" : Exchange terminated."; close; } // Check total against inventory if (countitem(.pod_id) < .@amount) { mes .npc_name$; mes "^FF0000Please enter a valid amount.^000000"; } } while (countitem(.pod_id) < .@amount); delitem .pod_id, .@amount; setd .points_var$, getd(.points_var$) + .@total; mes .npc_name$; mes "You've exchanged "+ .@amount +" "+ .pod_name$ +" for "+ .@total +" "+ .points_name$ +". "+ "You now have "+ getd(.points_var$) +" "+ .points_name$ +" and "+ countitem(.pod_id) +" "+ .pod_name$ +"."; break; } close; /*----------------------------------------------------- Configuration -----------------------------------------------------*/ OnInit: .npc_name$ = "[^0000FFDonation Manager^000000]"; .rate = 10; // Exchange rate (1 point * rate = 1 PoD) .pod_id = Donation_Card; // Proof of Donation item ID or constant .pod_name$ = getitemname(.pod_id) +"(s)"; // Proof of Donation item name .points_name$ = "Cash Point(s)"; // Points name .points_var$ = "#CASHPOINTS"; // Points variable // Modifying these options requires updates to the corresponding case setarray .menu_options$[0], "^FF0000>^000000 Cancel", "^0000FF>^000000 Exchange "+ .points_name$ +" for "+ .pod_name$, "^0000FF>^000000 Exchange "+ .pod_name$ +" for "+ .points_name$; end; }
查找差异