设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2426|回复: 4
打印 上一主题 下一主题

[已经解决] 请教一个新建的类同时继承另外2个类的方法

[复制链接]

Lv4.逐梦者

梦石
0
星屑
9163
在线时间
466 小时
注册时间
2015-5-8
帖子
866
跳转到指定楼层
1
发表于 2020-5-26 18:30:39 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
我想新建一个类Class ABC,咱想让这个类既能继承class Game_Actor 也能继承 class Window_Selectable,
(如果只继承一个类可以写成class ABC < Window_Selectable或class ABC < Game_Actor,这个知识点咱知道)
继承过后咱是希望类class Game_Actor 和 类class Window_Selectable里面的类变量(前面带@的)都可以直接拿到class ABC 里使用

还请诸位指点一二,多谢了!

Lv4.逐梦者

梦石
0
星屑
6483
在线时间
119 小时
注册时间
2020-1-8
帖子
234
5
发表于 2020-7-8 08:03:24 | 只看该作者
继承的方法我不清楚
不过你举例的问题 参考RMXP里Window_Skill不就可以了
Window_Skill是Window_Selectable的子类
Window_Skill的参数actor在Scene_Skill中 @actor = $game_party.actors[@actor_index]
Game_Party中角色来自Game_Actors
Game_Actors基本就是Game_Actor   这是不是如4楼说的
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
10
星屑
39587
在线时间
1920 小时
注册时间
2010-11-14
帖子
3320

R考场第七期纪念奖

4
发表于 2020-5-31 19:36:33 | 只看该作者
本帖最后由 KB.Driver 于 2020-5-31 19:37 编辑

建议使用“内含并转发”,而不是继承

什么是继承?
Sprite_Character < Sprite_Base 这种就是

什么是内含并转发?
Game_Variables里面包含一个数组变量@data,并且通过定义[]与[]=方法,
再把执行内容转发给@data来完成,从而将自己伪造成一个有部分数组功能的类。

你说的这种情况,可以将类继承自Window_Selectable,
然后再在内部使用Game_Actor的实例,并把Game_Actor的方法转发给这个实例来完成。

最后抓个虫,名字前面是一个@符号的叫实例变量,两个@符号的才是类变量。

评分

参与人数 1星屑 +50 收起 理由
RyanBern + 50 认可答案

查看全部评分

用头画头像,用脚写脚本
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23994
在线时间
3339 小时
注册时间
2011-7-8
帖子
3926

开拓者

3
发表于 2020-5-31 19:02:29 | 只看该作者
想了想,还是不建议使用多继承。你可以参考Sprite_Battler的实现,它就绑定了一个Game_Battler对象在内部使用。
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv4.逐梦者 (禁止发言)

梦石
0
星屑
5706
在线时间
922 小时
注册时间
2013-8-29
帖子
1468
2
发表于 2020-5-26 18:39:29 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-10 21:32

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表