public void SetValue(BurikoReference reference, BurikoVariable var)
        {
            int num = reference.Member;

            if (num == -1)
            {
                num = 0;
            }
            Vector3         value      = Elements[num];
            BurikoReference reference2 = reference.Reference;

            switch (reference2.Property)
            {
            case "lX":
                value.x = (float)var.IntValue();
                break;

            case "lY":
                value.y = (float)var.IntValue();
                break;

            case "lZ":
                value.z = (float)var.IntValue();
                break;

            default:
                Logger.LogError("Cannot set propertly " + reference2.Property + " on a ST_Vector object!");
                break;
            }
            Elements[num] = value;
        }
        public int IntValue(BurikoReference reference)
        {
            int num = reference.Member;

            if (num == -1)
            {
                num = 0;
            }
            Vector3         vector     = Elements[num];
            BurikoReference reference2 = reference.Reference;

            switch (reference2.Property)
            {
            case "lX":
                return((int)vector.x);

            case "lY":
                return(-(int)vector.y);

            case "lZ":
                return((int)vector.z);

            default:
                Logger.LogError("Cannot set propertly " + reference2.Property + " on a ST_Vector object!");
                return(0);
            }
        }
Exemple #3
0
 public string StringValue(BurikoReference reference)
 {
     if (reference.Member <= 0)
     {
         return(Stringlist[0]);
     }
     return(Stringlist[reference.Member]);
 }
Exemple #4
0
 public int IntValue(BurikoReference reference)
 {
     if (reference.Member <= 0)
     {
         return(intlist[0]);
     }
     return(intlist[reference.Member]);
 }
Exemple #5
0
        public BurikoVariable GetObject(BurikoReference reference)
        {
            int num = reference.Member;

            if (num == -1)
            {
                num = 0;
            }
            return(new BurikoVariable(Stringlist[num]));
        }
Exemple #6
0
 public void SetValue(BurikoReference reference, BurikoVariable var)
 {
     if (reference.Member <= 0)
     {
         Stringlist[0] = var.StringValue();
     }
     else
     {
         Stringlist[reference.Member] = var.StringValue();
     }
 }
        public BurikoVariable(BinaryReader stream)
        {
            Type = (BurikoValueType)stream.ReadInt16();
            switch (Type)
            {
            case BurikoValueType.Null:
                valueInt = -1;
                break;

            case BurikoValueType.Bool:
                valueInt = stream.ReadByte();
                break;

            case BurikoValueType.Int:
                valueInt = stream.ReadInt32();
                break;

            case BurikoValueType.String:
                valueString = stream.ReadString();
                break;

            case BurikoValueType.Variable:
                stream.BaseStream.Seek(-2L, SeekOrigin.Current);
                valueReference = ReadReference(stream);
                break;

            case BurikoValueType.Math:
            {
                BurikoMathType type = (BurikoMathType)stream.ReadInt16();
                BurikoVariable a    = new BurikoVariable(stream);
                BurikoVariable b    = new BurikoVariable(stream);
                Type     = BurikoValueType.Int;
                valueInt = PerformMath(type, a, b);
                break;
            }

            case BurikoValueType.Operation:
                valueVariable = BurikoScriptSystem.Instance.GetCurrentScript().ExecuteOperation((BurikoOperations)stream.ReadInt16());
                break;

            default:
                throw new NotImplementedException("BurikoVariable: Unhandled BurikoValueType " + Type);
            }
        }
        public static BurikoReference ReadReference(BinaryReader dataReader)
        {
            short num = dataReader.ReadInt16();

            if (num != 5)
            {
                throw new Exception("Cannot perform assignment to an object that is not a declared variable.");
            }
            string          property        = dataReader.ReadString();
            int             member          = new BurikoVariable(dataReader).IntValue();
            bool            flag            = dataReader.ReadBoolean();
            BurikoReference burikoReference = new BurikoReference(property, member);

            if (flag)
            {
                burikoReference.Reference = ReadReference(dataReader);
            }
            return(burikoReference);
        }
 public BurikoVariable(BurikoReference reference, BurikoVariable variable)
 {
     Type           = BurikoValueType.Variable;
     valueReference = reference;
     valueVariable  = variable;
 }
        public void SetValue(BurikoReference reference, BurikoVariable var)
        {
            int num = reference.Member;

            if (num == -1)
            {
                num = 0;
            }
            MtnCtrlElement mtnCtrlElement = Elements[num];

            if (reference.Reference == null)
            {
                BurikoReference      burikoReference      = var.VariableValue();
                BurikoMtnCtrlElement burikoMtnCtrlElement = BurikoMemory.Instance.GetMemory(burikoReference.Property) as BurikoMtnCtrlElement;
                if (burikoMtnCtrlElement == null)
                {
                    throw new Exception("Attempting to set MtnCtrlElement with a variable that is not also a MtnCtrlElement!");
                }
                int num2 = burikoReference.Member;
                if (num2 == -1)
                {
                    num2 = 0;
                }
                Elements[num].CopyFrom(burikoMtnCtrlElement.GetElement(num2));
            }
            else
            {
                BurikoReference reference2 = reference.Reference;
                switch (reference2.Property)
                {
                case "lPoints":
                    mtnCtrlElement.Points = var.IntValue();
                    break;

                case "lAngle":
                    mtnCtrlElement.Angle = var.IntValue();
                    break;

                case "lTransparency":
                    mtnCtrlElement.Transparancy = var.IntValue();
                    break;

                case "lStyleOfMovements":
                    mtnCtrlElement.StyleOfMovement = var.IntValue();
                    break;

                case "lStyleOfRotating":
                    mtnCtrlElement.StyleOfRotation = var.IntValue();
                    break;

                case "lCount":
                    mtnCtrlElement.Time = var.IntValue();
                    break;

                case "astvRoute":
                {
                    int             member     = reference2.Member;
                    BurikoReference reference3 = reference2.Reference;
                    switch (reference3.Property)
                    {
                    case "lX":
                        mtnCtrlElement.Route[member].x = (float)var.IntValue();
                        break;

                    case "lY":
                        mtnCtrlElement.Route[member].y = (float)var.IntValue();
                        break;

                    case "lZ":
                        mtnCtrlElement.Route[member].z = (float)var.IntValue();
                        break;

                    default:
                        Logger.LogError("Invalid property of MtnCtrlElement.astvRoute " + reference3.Property);
                        break;
                    }
                    break;
                }

                default:
                    Logger.LogError("Invalid property of MtnCtrlElement " + reference2.Property);
                    break;
                }
            }
        }
 public BurikoVariable GetObject(BurikoReference reference)
 {
     throw new NotImplementedException();
 }
 public int IntValue(BurikoReference reference)
 {
     throw new NotImplementedException();
 }
 public string StringValue(BurikoReference reference)
 {
     throw new NotImplementedException();
 }
Exemple #14
0
 public BurikoVariable GetObject(BurikoReference reference)
 {
     return(new BurikoVariable(intlist[reference.Member]));
 }