getNextLvUpNeed & maxWidth in fillBoldText
This commit is contained in:
parent
5bcf8a5f6d
commit
d0babc84e9
10
_docs/api.md
10
_docs/api.md
@ -355,6 +355,11 @@ getMappedName: fn(name: string) -> string
|
||||
getNakedStatus: fn(name: string)
|
||||
获得勇士原始属性(无装备和衰弱影响)
|
||||
|
||||
getNextLvUpNeed: fn() -> number
|
||||
获得下次升级需要的经验值。
|
||||
升级扣除模式下会返回经验差值;非扣除模式下会返回总共需要的经验值。
|
||||
如果无法进行下次升级,返回null。
|
||||
|
||||
getRealStatus: fn(name: string)
|
||||
计算主角的某个属性,包括百分比修正
|
||||
例如:core.getRealStatus('atk'); // 计算主角的攻击力,包括百分比修正。战斗使用的就是这个值
|
||||
@ -1835,12 +1840,13 @@ fillArc: fn(name: string|CanvasRenderingContext2D, x: number, y: number, r: numb
|
||||
在某个canvas上绘制一个扇形
|
||||
参考资料:https://www.w3school.com.cn/tags/canvas_arc.asp
|
||||
|
||||
fillBoldText: fn(name: string|CanvasRenderingContext2D, text: string, x: number, y: number, style?: string, strokeStyle?: string, font?: string)
|
||||
fillBoldText: fn(name: string|CanvasRenderingContext2D, text: string, x: number, y: number, style?: string, strokeStyle?: string, font?: string, maxWidth?: number)
|
||||
在某个画布上绘制一个描边文字
|
||||
text: 要绘制的文本
|
||||
style: 绘制的样式
|
||||
strokeStyle: 要绘制的描边颜色
|
||||
font: 绘制的字体
|
||||
maxWidth: 最大宽度,超过此宽度会自动放缩
|
||||
|
||||
fillCircle: fn(name: string|CanvasRenderingContext2D, x: number, y: number, r: number, style?: string)
|
||||
在某个canvas上绘制一个圆
|
||||
@ -1868,7 +1874,7 @@ fillText: fn(name: string|CanvasRenderingContext2D, text: string, x: number, y:
|
||||
text: 要绘制的文本
|
||||
style: 绘制的样式
|
||||
font: 绘制的字体
|
||||
最大宽度,超过此宽度会自动放缩
|
||||
maxWidth: 最大宽度,超过此宽度会自动放缩
|
||||
参考资料:https://www.w3school.com.cn/tags/canvas_filltext.asp
|
||||
|
||||
getContextByName: fn(canvas: string|CanvasRenderingContext2D) -> CanvasRenderingContext2D
|
||||
|
||||
@ -2252,6 +2252,10 @@ var terndefs_f6783a0a_522d_417e_8407_94c67b692e50 = [
|
||||
"!doc": "根据级别的数字获取对应的名称,后者定义在全塔属性<br/>例如:core.getLvName(); // 获取主角当前级别的名称,如“下级佣兵”<br/>lv: 级别的数字,不填则视为主角当前的级别<br/>返回值:级别的名称,如果不存在就还是返回数字",
|
||||
"!type": "fn(lv?: number) -> string|number"
|
||||
},
|
||||
"getNextLvUpNeed": {
|
||||
"!doc": "获得下次升级需要的经验值。<br/>升级扣除模式下会返回经验差值;非扣除模式下会返回总共需要的经验值。<br/>如果无法进行下次升级,返回null。",
|
||||
"!type": "fn() -> number"
|
||||
},
|
||||
"addStatus": {
|
||||
"!doc": "增减主角的某个属性,等价于core.setStatus(name, core.getStatus(name) + value)<br/>例如:core.addStatus('atk', 100'); // 给主角攻击力加100<br/>name: 属性的英文名<br/>value: 属性的增量",
|
||||
"!type": "fn(name: string, value: number)"
|
||||
@ -3574,8 +3578,8 @@ var terndefs_f6783a0a_522d_417e_8407_94c67b692e50 = [
|
||||
"!type": "fn(name: string|CanvasRenderingContext2D, x: number, y: number, width: number, height: number, radius: number, style?: string, angle?: number)"
|
||||
},
|
||||
"fillBoldText": {
|
||||
"!doc": "在某个画布上绘制一个描边文字<br/>text: 要绘制的文本<br/>style: 绘制的样式<br/>strokeStyle: 要绘制的描边颜色<br/>font: 绘制的字体",
|
||||
"!type": "fn(name: string|CanvasRenderingContext2D, text: string, x: number, y: number, style?: string, strokeStyle?: string, font?: string)"
|
||||
"!doc": "在某个画布上绘制一个描边文字<br/>text: 要绘制的文本<br/>style: 绘制的样式<br/>strokeStyle: 要绘制的描边颜色<br/>font: 绘制的字体<br/>maxWidth: 最大宽度,超过此宽度会自动放缩",
|
||||
"!type": "fn(name: string|CanvasRenderingContext2D, text: string, x: number, y: number, style?: string, strokeStyle?: string, font?: string, maxWidth?: number)"
|
||||
},
|
||||
"saveCanvas": {
|
||||
"!doc": "保存某个canvas状态",
|
||||
|
||||
@ -102,7 +102,7 @@ var comment_c456ea59_6018_45ef_8bcc_211a24c627dc = {
|
||||
}
|
||||
}
|
||||
},
|
||||
"items_template": { 'cls': 'items', 'name': '新物品' },
|
||||
"items_template": { 'cls': 'items', 'name': '新物品', 'canUseItemEffect': 'true' },
|
||||
|
||||
|
||||
// --------------------------- 【怪物】相关的表格配置 --------------------------- //
|
||||
|
||||
@ -2293,6 +2293,16 @@ control.prototype.getLvName = function (lv) {
|
||||
return ((core.firstData.levelUp||[])[lv-1]||{}).title || lv;
|
||||
}
|
||||
|
||||
////// 获得下个等级所需经验;如果不存在下个等级,返回null。 //////
|
||||
control.prototype.getNextLvUpNeed = function () {
|
||||
if (!core.status.hero) return null;
|
||||
if (core.status.hero.lv >= core.firstData.levelUp.length) return null;
|
||||
var need = core.calValue(core.firstData.levelUp[core.status.hero.lv].need);
|
||||
if (core.flags.statusBarItems.indexOf('levelUpLeftMode') >= 0)
|
||||
return Math.max(need - core.getStatus('exp'), 0);
|
||||
else return need;
|
||||
}
|
||||
|
||||
////// 设置某个自定义变量或flag //////
|
||||
control.prototype.setFlag = function(name, value) {
|
||||
if (value == null) return this.removeFlag(name);
|
||||
|
||||
@ -130,7 +130,7 @@ ui.prototype.setFontForMaxWidth = function (name, text, maxWidth, font) {
|
||||
}
|
||||
|
||||
////// 在某个canvas上绘制粗体 //////
|
||||
ui.prototype.fillBoldText = function (name, text, x, y, style, strokeStyle, font) {
|
||||
ui.prototype.fillBoldText = function (name, text, x, y, style, strokeStyle, font, maxWidth) {
|
||||
var ctx = this.getContextByName(name);
|
||||
if (!ctx) return;
|
||||
if (font) ctx.font = font;
|
||||
@ -138,6 +138,9 @@ ui.prototype.fillBoldText = function (name, text, x, y, style, strokeStyle, font
|
||||
style = core.arrayToRGBA(style);
|
||||
if (!strokeStyle) strokeStyle = '#000000';
|
||||
strokeStyle = core.arrayToRGBA(strokeStyle);
|
||||
if (maxWidth != null) {
|
||||
this.setFontForMaxWidth(ctx, text, maxWidth);
|
||||
}
|
||||
ctx.strokeStyle = strokeStyle;
|
||||
ctx.lineWidth = 2;
|
||||
ctx.strokeText(text, x, y);
|
||||
|
||||
@ -1128,12 +1128,8 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a =
|
||||
// 如果是自定义添加的状态栏,也需要在这里进行设置显示的数值
|
||||
|
||||
// 进阶
|
||||
if (core.flags.statusBarItems.indexOf('enableLevelUp') >= 0 && core.status.hero.lv < core.firstData.levelUp.length) {
|
||||
var need = core.calValue(core.firstData.levelUp[core.status.hero.lv].need);
|
||||
if (core.flags.statusBarItems.indexOf('levelUpLeftMode') >= 0)
|
||||
core.setStatusBarInnerHTML('up', core.formatBigNumber(need - core.getStatus('exp')) || "");
|
||||
else
|
||||
core.setStatusBarInnerHTML('up', core.formatBigNumber(need) || "");
|
||||
if (core.flags.statusBarItems.indexOf('enableLevelUp') >= 0) {
|
||||
core.setStatusBarInnerHTML('up', core.formatBigNumber(core.getNextLvUpNeed()) || "");
|
||||
} else core.setStatusBarInnerHTML('up', "");
|
||||
|
||||
// 钥匙
|
||||
|
||||
11
runtime.d.ts
vendored
11
runtime.d.ts
vendored
@ -510,6 +510,13 @@ declare class control {
|
||||
*/
|
||||
getLvName(lv?: number): string | number
|
||||
|
||||
/**
|
||||
* 获得下次升级需要的经验值。
|
||||
* 升级扣除模式下会返回经验差值;非扣除模式下会返回总共需要的经验值。
|
||||
* 如果无法进行下次升级,返回null。
|
||||
*/
|
||||
getNextLvUpNeed() : number
|
||||
|
||||
/**
|
||||
* 设置一个flag变量
|
||||
* @example core.setFlag('poison', true); // 令主角中毒
|
||||
@ -2021,7 +2028,7 @@ declare class ui {
|
||||
* @param style 绘制的样式
|
||||
* @param font 绘制的字体
|
||||
*/
|
||||
fillText(name: CtxRefer, text: string, x: number, y: number, style: string, font: string): void
|
||||
fillText(name: CtxRefer, text: string, x: number, y: number, style?: string, font?: string, maxWidth?: number): void
|
||||
|
||||
/**
|
||||
* 在某个画布上绘制一个描黑边的文字
|
||||
@ -2030,7 +2037,7 @@ declare class ui {
|
||||
* @param strokeStyle 绘制的描边颜色
|
||||
* @param font 绘制的字体
|
||||
*/
|
||||
fillBoldText(name: CtxRefer, text: string, x: number, y: number, style: string, strokeStyle: string, font: string): void
|
||||
fillBoldText(name: CtxRefer, text: string, x: number, y: number, style?: string, strokeStyle?: string, font?: string, maxWidth?: number): void
|
||||
|
||||
/**
|
||||
* 绘制一个矩形。style可选为绘制样式
|
||||
|
||||
Loading…
Reference in New Issue
Block a user