Exemple #1
0
    public override bool LimitExecHandler(HandleTarget Target, LimitData Limit, FuncContext context)
    {
        List <Ilife> target = Target.GetTarget((EFuncTarget)(Limit.Target));

        if (target.Count <= 0)
        {
            return(false);
        }

        Vector3 targetPos = ((ITransformBehaviour)(target[0])).GetTransformData().GetPosition();
        float   distance  = Vector3.Distance(PlayerManager.Instance.GetPlayerInstance().GetTransformData().GetPosition(), targetPos);

        return(OperationFunc.LimitOperatorValue((ELimitOperator)Limit.Oper, (int)(distance), Limit.ParamIntList[0]));
    }
    public override bool LimitExecHandler(HandleTarget Target, LimitData Limit, FuncContext context)
    {
        List <Ilife> target = Target.GetTarget((EFuncTarget)(Limit.Target));

        for (int i = 0; i < target.Count; ++i)
        {
            if (!(target[i] is PlayerCharacter))
            {
                continue;
            }
            int  index = Limit.ParamIntList[0];
            bool flag  = PlayerManager.Instance.GetCharCounterData().GetFlag(index);
            if (!OperationFunc.LimitOperatorValue((ELimitOperator)Limit.Oper, flag, (Limit.ParamIntList[1] != 0)))
            {
                return(false);
            }
        }
        return(true);
    }
    public override bool LimitExecHandler(HandleTarget Target, LimitData Limit, FuncContext context)
    {
        int missionStepCount = MissionManager.Instance.GetMissionStepCounter(Limit.ParamIntList[0]);

        return(OperationFunc.LimitOperatorValue((ELimitOperator)Limit.Oper, missionStepCount, Limit.ParamIntList[1]));
    }
    public override bool LimitExecHandler(HandleTarget Target, LimitData Limit, FuncContext context)
    {
        int random = Random.Range(0, 100);

        return(OperationFunc.LimitOperatorValue((ELimitOperator)Limit.Oper, random, Limit.ParamIntList[0]));
    }