Project1

标题: 请教关于角色的属性扩展类插件的设置 [打印本页]

作者: 剑啸琴吟    时间: 2019-4-19 23:45
标题: 请教关于角色的属性扩展类插件的设置
是这样的,目前常见的这类插件,包括yep大佬的还有futokoro都能做到,但是他们扩展的数值参数,都不是自变量,而是一个和基础param关联的函数,如果我把这个参数做成自变量,怎么利用script来改变这个参数的数值?还有就是在script当中,主角队伍成员的名称是啥actor这种不起作用。新手很菜,求教育。
作者: 526396987    时间: 2019-4-20 04:03
什么叫扩展的数值参数?よくわからない
如果你指的是命中率、回避率这些xparam,可以直接调用的,比如actor.hit(),然后用一个变量指向这个对象,
想要改变数值,直接赋值就可以了
作者: 剑啸琴吟    时间: 2019-4-20 12:27
526396987 发表于 2019-4-20 04:03
什么叫扩展的数值参数?よくわからない
如果你指的是命中率、回避率这些xparam,可以直接调用的,比如actor ...

我说的可能不够清楚,就是连xparam也不包括的,单独的参数futokoro是这种的
gauge:{
            digit :Number(parameters['Gauge Param Digit'] || 0),
        },
        image:{
            posiX:Number(parameters['Image Position X'] || 0),
        },
        message:{
            levelUp:String(parameters['Display LevelUp Message'] || ''),
        },
        customs:[
            {name:String(parameters['Custom 0 Display Name'] || ''),
              unit:String(parameters['Custom 0 Unit'] || ''),
              formula:String(parameters['Custom 0 References'] || ''),},
            {name:String(parameters['Custom 1 Display Name'] || ''),
              unit:String(parameters['Custom 1 Unit'] || ''),
              formula:String(parameters['Custom 1 References'] || ''),},
然后不同的actor的怎么作为对象来修改?比如说,我现在只想改编号0004的角色的hit这种。
还有就是这方法会不会很蠢,用一个全局变量做跳转,会不会更简单些。感谢。

作者: 526396987    时间: 2019-4-20 12:44
剑啸琴吟 发表于 2019-4-20 12:27
我说的可能不够清楚,就是连xparam也不包括的,单独的参数futokoro是这种的
gauge:{
            digit : ...

感觉你列举的这些更像是用于系统的参数

不同的actor,获取他们的id,用id作为对象,这个已经在rpg_objects里定义好了
作者: 剑啸琴吟    时间: 2019-4-20 12:54
526396987 发表于 2019-4-20 12:44
感觉你列举的这些更像是用于系统的参数

不同的actor,获取他们的id,用id作为对象,这个已经在rpg_objec ...

那格式是什么样的?actor1/actor(1)/actor 1?
作者: 526396987    时间: 2019-4-20 13:34
剑啸琴吟 发表于 2019-4-20 12:54
那格式是什么样的?actor1/actor(1)/actor 1?

不知道能不能直接拿过来用,先调用吧
this._actor = actor;
然后再获取ID
this._actor._actorId()
或者直接 $gameActor.actor(id)
作者: 剑啸琴吟    时间: 2019-4-20 13:55
526396987 发表于 2019-4-20 13:34
不知道能不能直接拿过来用,先调用吧
this._actor = actor;
然后再获取ID

谢谢大佬
那对应的属性
$gameActor.actor(id).hit?
作者: 526396987    时间: 2019-4-20 14:15
剑啸琴吟 发表于 2019-4-20 13:55
谢谢大佬
那对应的属性
$gameActor.actor(id).hit?

不知道可不可以,如果不可以你试试$gameActor.actor(id).xparam[1]
作者: 剑啸琴吟    时间: 2019-4-21 00:09
526396987 发表于 2019-4-20 14:15
不知道可不可以,如果不可以你试试$gameActor.actor(id).xparam[1]

$gameActor is not defined
我僵住了
作者: 剑啸琴吟    时间: 2019-4-21 01:44
526396987 发表于 2019-4-20 14:15
不知道可不可以,如果不可以你试试$gameActor.actor(id).xparam[1]

唔,基本成了,但是插件用起来还是挺僵硬的。
用alert查看了一下,可以$gameActors.actor(id)._name调出来名字
断头鬼好恶心啊。如果,我想额外添加一个角色关联的自变量,是不是最好直接在Game_Actor的函数上直接动手?
现在用的插件是FTKR_CustomSimpleActorStatus.js 状态界面好处理一点,但是还是有种种微妙的地方……
作者: 剑啸琴吟    时间: 2019-4-21 13:04
526396987 发表于 2019-4-20 14:15
不知道可不可以,如果不可以你试试$gameActor.actor(id).xparam[1]

两种
一种改变只靠开关和事件,不受状态装备啥的影响
一种只受状态影响……从下面这个动手?
Object.defineProperties(Game_BattlerBase.prototype, {
    // Hit Points
    hp: { get: function() { return this._hp; }, configurable: true },
    // Magic Points
    mp: { get: function() { return this._mp; }, configurable: true },
    // Tactical Points
    tp: { get: function() { return this._tp; }, configurable: true },
    // Maximum Hit Points
    mhp: { get: function() { return this.param(0); }, configurable: true },
    // Maximum Magic Points
    mmp: { get: function() { return this.param(1); }, configurable: true },
    // ATtacK power
    atk: { get: function() { return this.param(2); }, configurable: true },
    // DEFense power
    def: { get: function() { return this.param(3); }, configurable: true },
    // Magic ATtack power
    mat: { get: function() { return this.param(4); }, configurable: true },
    // Magic DeFense power
    mdf: { get: function() { return this.param(5); }, configurable: true },
    // AGIlity
    agi: { get: function() { return this.param(6); }, configurable: true },
    // LUcK
    luk: { get: function() { return this.param(7); }, configurable: true },
    // HIT rate
    hit: { get: function() { return this.xparam(0); }, configurable: true },
    // EVAsion rate
    eva: { get: function() { return this.xparam(1); }, configurable: true },
    // CRItical rate
    cri: { get: function() { return this.xparam(2); }, configurable: true },
    // Critical EVasion rate
    cev: { get: function() { return this.xparam(3); }, configurable: true },
    // Magic EVasion rate
    mev: { get: function() { return this.xparam(4); }, configurable: true },
    // Magic ReFlection rate
    mrf: { get: function() { return this.xparam(5); }, configurable: true },
    // CouNTer attack rate
    cnt: { get: function() { return this.xparam(6); }, configurable: true },
    // Hp ReGeneration rate
    hrg: { get: function() { return this.xparam(7); }, configurable: true },
    // Mp ReGeneration rate
    mrg: { get: function() { return this.xparam(8); }, configurable: true },
    // Tp ReGeneration rate
    trg: { get: function() { return this.xparam(9); }, configurable: true },
    // TarGet Rate
    tgr: { get: function() { return this.sparam(0); }, configurable: true },
    // GuaRD effect rate
    grd: { get: function() { return this.sparam(1); }, configurable: true },
    // RECovery effect rate
    rec: { get: function() { return this.sparam(2); }, configurable: true },
    // PHArmacology
    pha: { get: function() { return this.sparam(3); }, configurable: true },
    // Mp Cost Rate
    mcr: { get: function() { return this.sparam(4); }, configurable: true },
    // Tp Charge Rate
    tcr: { get: function() { return this.sparam(5); }, configurable: true },
    // Physical Damage Rate
    pdr: { get: function() { return this.sparam(6); }, configurable: true },
    // Magical Damage Rate
    mdr: { get: function() { return this.sparam(7); }, configurable: true },
    // Floor Damage Rate
    fdr: { get: function() { return this.sparam(8); }, configurable: true },
    // EXperience Rate
    exr: { get: function() { return this.sparam(9); }, configurable: true }
});

作者: tseyik    时间: 2019-4-21 16:44
本帖最后由 tseyik 于 2019-4-21 20:16 编辑

你可參考別人怎麼做
http://tm.lucky-duet.com/viewtopic.php?f=5&t=3265

満腹、水分、睡眠ゲージを追加

作者: 剑啸琴吟    时间: 2019-4-21 19:25
tseyik 发表于 2019-4-21 16:44
你可參孝別人怎麼做
http://tm.lucky-duet.com/viewtopic.php?f=5&t=3265

谢了,这个做的人和我想的是类似的。
可是我太菜了,这么好的资源一直没找到233




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1