26 public const string fName =
"SubsystemFireworksBlockBehavior";
33 for (
int i = 0; i < 3; i++) {
57 if (!projectile.ToRemove) {
58 projectile.ToRemove = true;
59 ExplodeFireworks(projectile.Position, data);
68 base.Load(valuesDictionary);
79 public virtual void Update(
float dt) {
81 if (componentPlayer ==
null) {
88 DateTime now = DateTime.Now;
106 if (
m_random.Float(0f, 1f) < num * dt) {
108 Vector3 vector2 = componentPlayer.ComponentBody.Position +
new Vector3(vector.
X, 0f, vector.
Y);
116 if (terrainRaycastResult.HasValue) {
124 terrainRaycastResult.
Value.CellFace.Point.X,
125 terrainRaycastResult.Value.CellFace.Point.Y + 1,
126 terrainRaycastResult.Value.CellFace.Point.Z
static float Lerp(float x1, float x2, float f)
static bool PeriodicEvent(double period, double offset)
virtual void DisplayLargeMessage(string largeText, string smallText, float duration, float delay)
ComponentGui ComponentGui
ComponentSleep ComponentSleep
static int SetFlickering(int data, bool flickering)
static bool GetFlickering(int data)
static Shape GetShape(int data)
static int SetColor(int data, int color)
static readonly Color[] FireworksColors
static int GetAltitude(int data)
static int SetAltitude(int data, int altitude)
static int GetColor(int data)
static int SetShape(int data, Shape shape)
static string Get(string className, int key)
获取在当前语言类名键对应的字符串
static int NewYearCelebrationLastYear
SubsystemTerrain SubsystemTerrain
override void OnFiredAsProjectile(Projectile projectile)
override void Load(ValuesDictionary valuesDictionary)
SubsystemTerrain m_subsystemTerrain
SubsystemParticles m_subsystemParticles
SubsystemPlayers m_subsystemPlayers
SubsystemProjectiles m_subsystemProjectiles
override bool OnHitAsProjectile(CellFace? cellFace, ComponentBody componentBody, WorldItem worldItem)
SubsystemSky m_subsystemSky
override int[] HandledBlocks
virtual void Update(float dt)
SubsystemTime m_subsystemTime
SubsystemNoise m_subsystemNoise
SubsystemAudio m_subsystemAudio
void ExplodeFireworks(Vector3 position, int data)
float m_newYearCelebrationTimeRemaining
static int MakeBlockValue(int contents)
static int ExtractData(int value)
ValuesDictionary ValuesDictionary
static readonly Vector3 Zero