在将值附加到gameObject之前,将值设置为组件脚本

时间:2016-08-28 13:03:45

标签: c# class unity3d

我创建了人群控制效果(慢速,冻结,晕眩,小军......),它们都在不同的脚本中,并且在需要时附加到玩家的游戏对象上。但是,如果我希望一次有2个慢速,在脚本中有不同的值,我不知道如何改变它们。我希望能够在将脚本类添加到实际的gameObject之前对其进行实例化。

Foo someClass = new Foo();
someClass.Duration = 10;
someClass.SlowAmount = 10;
PlayerObject.AddComponent<someClass>();

Foo someClass2 = new Foo();
someClass2.Duration = 1;
someClass2.SlowAmount = 1;
PlayerObject.AddComponent<someClass2>();

1 个答案:

答案 0 :(得分:0)

首先,我建议始终为您的类使用大写,为变量使用小写以便轻松区分它们:

SomeClass, SomeClass2

要回答您的问题,您可以将类保存在变量中,然后操作值:

SomeClass someClass = playerObject.AddComponent<SomeClass>() as SomeClass;
someClass.duration = 10;
someClass.slowAmount = 10;