MemeMayhem / ModExamples

11 stars 3 forks source link

几个问题 #49

Closed Ill-cat closed 2 months ago

Ill-cat commented 2 months ago

1.可以在能力/神器描述中插入自己的贴图吗 2.可以让一个能力使子弹同时施加两种不同的buff吗 3.可以控制角色在一局中可以遇到的神器吗 4.能加个游戏内快速重载mod的功能吗 5.可以在游戏内显示mod人物可以获取的能力吗 6.可以给个不启用礼物神器的选项吗 7.还挺好玩

MajorMajorMajor6 commented 2 months ago
  1. https://github.com/MemeMayhem/ModExamples/issues/10 是这个吗?
  2. 加两个buff的过程中有遇到什么困难?应该是可以的
  3. 目前不能完全控制
  4. 目前优先扩展模组的可能性(模组作者可以做更多事情),你加载游戏要多久?

5.我没看懂你啥意思。?

  1. 试一下blocked_relics https://github.com/MemeMayhem/ModExamples/issues/29#issuecomment-2361704155
  2. 谢谢哈
Ill-cat commented 2 months ago

1.就是说,我定义了一个子弹,用了自己的贴图,然后我定了一个能力添加了这个子弹,我想在这个能力的description用上这个子弹的贴图 2.这个我刚去试了一下,确实可以实现,定义两个带behavior的能力然后在一个能力里Api.PerkBehaviorSystem:ApplyPerkBehaviorToSelf就行了(一开始还没做那么多能力所以没试 4.其实挺快的,只是改mod一直加载重开有点麻烦,如果可以改了然后游戏内热重载会舒服不少( 5.就是里面的能力图鉴,不是分了每个人物可以遇到的能力吗 6.这个好像...是遇不到吧,倒是实现3的一半,试了下并不能禁用或是减少 7.支持创意工坊的游戏就是好游戏( 8.闪避的触发在做了吗(

GoodCrispyShark commented 2 months ago

闪避触发可以用


        RegisterOnMissileHitCallback(name, function(level, attack_data, caster, target)
            if not attack_data.is_dodged then
                return
            end

        end)
GoodCrispyShark commented 2 months ago

能力图鉴确实应该支持 后续会添加支持

fuxiao1563 commented 2 months ago

重载确实不需要多长时间,但架不住频率高,确实会有点儿烦躁的

Ill-cat commented 2 months ago

哦莫,之前试了下attack_data.is_dodged卡死了,然后试着获取了下值没获取到,以为还没有(

刚刚试了下能用了,当时应该是没用对 解决了,感谢

fx013 commented 2 months ago

@Ill-cat 在文字描述里添加图片的功能在游戏的最新版本里有了,例子参见:https://github.com/MemeMayhem/ModExamples/tree/main/Medium-PoisonTimer

下个版本会加个快捷键Ctrl + F5重载游戏。

Ill-cat commented 2 months ago

好的,我再追问一下... 开大和紧急的图标有了吗 昨天试了一下Api.GameMechanicTags.TRIGGERING_EVENT_TYPE.OnUltmateAttackLaunch 好像只有加粗的英文字体

fx013 commented 2 months ago

@Ill-cat 开大和紧急的图标你是说文字里用的图标?都在GameMechanicTags里,开大是TAG.ultimate_damage,紧急是TAG.emergency。如果你只是想用图标,可以直接用里面的<sprite name=xxx>。另外游戏里文字用的是TextMeshPro,所以你可以用TextMeshPro的一些rich text syntax:https://docs.unity3d.com/Packages/com.unity.textmeshpro@4.0/manual/RichText.html (我们用的版本不是最新的,可能有些用不了)。

Ill-cat commented 2 months ago

OK,找到了,试了下是TAG.overclock ee7deb1593868a66c4055ea8eb7d5c63 不过我主要是馋右边的这个开大提示( 1eb06eeefccfd71aa05ff8add568f987 不知可有...

fx013 commented 2 months ago

这个你可以在PerkData.lua.txt里找到:https://github.com/MemeMayhem/ModExamples/blob/main/References/PerkData.lua.txt#L7630

attack_speed_on_ult有两个tooltip,一个是用的extra_tooltips,另一个是因为perk上有behavior修改了攻击速度。

Ill-cat commented 2 months ago

这东西我也试过 只是一加就给我锁定了🤔

Api:RegisterPerk("mucus_explosion", {
        id = "mucus_explosion",
        display_name = "黏液迸发",
        description = Api.GameMechanicTags.TAG.overclock
        .. "时发射<color=#2fc107>1-4</color>个"
        .. TAG_mucus
        .. "\n黏液损毁的"
        .. Api.GameMechanicTags.TAG.energy
        .. "增加<color=#2fc107>3</color>",
        flavor_text = "你别喷到我身上",
        icon = DCEI.Texture("mucus_explosion"),
        perk_type = "perk",
        rarity = "rare",

        --额外提示
        extra_tooltips = {
            {
                name = "overclock",
                type = TOOLTIP_TYPES.keyword,
            },
        },

        --标记用
        attacks = {
            mucus = 0,
        },

        --自定义属性修正
        modify_attributes = {
            mucus_destroy_energy = 3,
        },
    },
fx013 commented 2 months ago

你那是因为TOOLTIP_TYPES这个变量没有定义,原本的定义在:https://github.com/MemeMayhem/ModExamples/blob/main/References/PerkData.lua.txt#L119

你可以直接写type = "keyword"

Ill-cat commented 2 months ago

哦,这样,那就解决了 (对不起我是lua小白