public void SetProp(PropID nID, float value) { if (m_fightProp != null) { m_fightProp.SetProp(nID, value); } }
public long EnumProperties(IntPtr enumerator) => 0x80004001L; // Not implemented public int GetProperty(uint index, PropID propId, ref PropVariant value) { var file = fileNames[(int)index]; switch (propId) { case PropID.Attributes: value.VarType = VarEnum.VT_UI4; value.IntValue = (int)(Directory.Exists(file) ? FileAttributes.Directory : FileAttributes.Archive); break; case PropID.LastWriteTime: value.VarType = VarEnum.VT_FILETIME; value.LongValue = new FileInfo(file).LastWriteTime.ToFileTime(); break; case PropID.Path: value.VarType = VarEnum.VT_BSTR; value.Value = Marshal.StringToBSTR(file.Substring(basePath.Length)); break; case PropID.IsDirectory: value.VarType = VarEnum.VT_BOOL; value.LongValue = Convert.ToByte(Directory.Exists(file)); break; case PropID.IsAnti: value.VarType = VarEnum.VT_BOOL; value.LongValue = 0; break; case PropID.Size: value.VarType = VarEnum.VT_UI8; value.LongValue = new FileInfo(file).Length; break; } return 0; }
public float GetProp(PropID nID) { if (m_fightProp == null) { Debug.LogWarning("实体战斗属性未初始化 !!!"); return(0.0f); } return(m_fightProp.GetProp(nID)); }
public void SetProp(PropID nID, float value) { if (nID < PropID.Max) { if (m_PropFuns[(int)nID] == null) { return; } m_PropFuns[(int)nID](nID, value); } }
private void Cover_NoNegative(PropID propID, float value) { if (value < 0.0f) { m_nNumProp[(int)propID] = 0.0f; } else { m_nNumProp[(int)propID] = value; } }
private void Increment_NoNegative(PropID propID, float value) { float newValue = m_nNumProp[(int)propID] + value; if (newValue < 0.0f) { m_nNumProp[(int)propID] = 0.0f; } else { m_nNumProp[(int)propID] = newValue; } }
private void ChangeCurEnergy(PropID propID, float value) { float newValue = m_nNumProp[(int)PropID.Energy] + value; if (newValue < COMMON_DEF.MIN_FLOAT) { newValue = 0.0f; } else if (newValue > m_nNumProp[(int)PropID.MaxEnergy]) { newValue = m_nNumProp[(int)PropID.MaxEnergy]; } m_nNumProp[(int)PropID.Energy] = newValue; }
public EventData[] GenerateEvent() { EventCustomData customData; switch (Type) { case EventType.LightBackTopLasers: case EventType.LightTrackRingNeons: case EventType.LightLeftLasers: case EventType.LightRightLasers: case EventType.LightBottomBackSideLasers: case EventType.Lasers: case EventType.BackTopTrackRing: customData = new EventCustomData { Color = Color.Copy(), PropID = PropID.Copy(), LightID = LightID.Copy() }; break; case EventType.RotationAllTrackRings: case EventType.RotationSmallTrackRings: customData = new RingCustomData { CounterSpin = CounterLock.Copy(), Direction = Direction.Copy(), NameFilter = Filter.Copy(), PropMult = PropMult.Copy(), Reset = Reset.Copy(), SpeedMult = SpeedMult.Copy(), StepMult = StepMult.Copy(), Prop = Prop.Copy(), Speed = Speed.Copy(), Step = Step.Copy() }; break; case EventType.RotatingLeftLasers: case EventType.RotatingRightLasers: case EventType.RotatingLasers: customData = new LaserCustomData { Direction = Direction.Copy(), LockPosition = CounterLock.Copy(), PreciseSpeed = Speed.Copy() }; break; default: throw new ArgumentOutOfRangeException(); } if (Type == EventType.Lasers || Type == EventType.RotatingLasers || Type == EventType.BackTopTrackRing) { return new[] { new EventData { CustomData = customData, Value = (int)Value, Type = Type == EventType.Lasers ? 2 : Type == EventType.RotatingLasers ? 12 : 0, Time = (float)StartTime }, new EventData { CustomData = customData, Value = (int)Value, Type = Type == EventType.Lasers ? 3 : Type == EventType.RotatingLasers ? 13 : 1, Time = (float)StartTime }, } } ; else { return new[] { new EventData { CustomData = customData, Value = (int)Value, Type = (int)Type, Time = (float)StartTime } } }; } }
/// <summary> /// Gives peds specific props (includes hats) /// </summary> /// <param name="comp">IS ZERO BASED INDEX (SNT is 1 based)</param> /// <param name="drawIndex">IS ZERO BASED INDEX (SNT is 1 based)</param> /// <param name="variation">IS ZERO BASED INDEX (SNT is 1 based)</param> public static void GivePedProp(this Ped ped, PropID comp, int drawIndex, int variation = 0, bool attach = true) => NativeFunction.Natives.SET_PED_PROP_INDEX(ped, (int)comp, drawIndex, variation, attach);
public float GetProp(PropID nID) { return(m_nNumProp[(int)nID]); }
private void NoPropFun(PropID propID, float value) { }