Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace Kyte
- {
- public class Variable
- {
- public object Value { get; set; }
- }
- class KyteSynt
- {
- Stack<object> Data = new Stack<object>();
- public void Run(string[] Line, string[] QuoteLine, int Mark)
- {
- if (Line[0] == "CTITLE")
- {
- try
- {
- Console.Title = Line[1];
- }
- catch
- {
- Console.WriteLine("DERROR[1] failed to initate");
- }
- }
- else if (Line[0] == "OUT")
- {
- // Out
- try
- {
- int length = Data.ReturnLength();
- for (int i = 1; i < Line.Length; i++)
- {
- string keyy = Data.getKey(Line[i]);
- if (keyy == Line[i])
- {
- Console.Write(Data.getItem(Line[i]));
- }
- else
- {
- Console.Write(QuoteLine[i] + " ");
- }
- }
- }
- catch
- {
- }
- }
- else if (Line[0] == "//")
- {
- }
- // OutLine
- else if (Line[0] == "OUTL")
- {
- try
- {
- int length = Data.ReturnLength();
- for (int i = 1; i < Line.Length; i++)
- {
- string keyy = Data.getKey(Line[i]);
- if (keyy != null)
- {
- Console.Write(Data.getItem(Line[i]));
- }
- else
- {
- Console.Write(QuoteLine[i] + " ");
- }
- }
- Console.WriteLine();
- }
- catch
- {
- }
- }
- else if (Line[0] == "LET")
- {
- try
- {
- int blabla;
- bool blablab;
- bool res = int.TryParse(Line[2], out blabla);
- bool resb = bool.TryParse(Line[2], out blablab);
- if (res == true)
- {
- Data.setItem(Line[1], blabla);
- }
- else if (resb == true)
- {
- Data.setItem(Line[1], blablab);
- }
- else
- {
- Data.setItem(Line[1], Line[2]);
- }
- }
- catch
- {
- Console.WriteLine("FATAL ERROR FAILED TO INIT LET COMMAND");
- }
- }
- // Unkown Command
- else
- {
- // Math
- if (Line.Length > 2)
- {
- if (Line[1] == "+=")
- {
- string keyy1 = Data.getKey(Line[0]);
- string keyy2 = Data.getKey(Line[2]);
- if (keyy2 == null && keyy1 != null)
- {
- int ktosum1 = Convert.ToInt32(Data.getItem(keyy1));
- int ktosum2 = Convert.ToInt32(Line[2]);
- int koutmath = ktosum1 + ktosum2;
- Data.setItem(Line[0], koutmath);
- }
- else if (keyy2 != null && keyy1 == null)
- {
- int ktosum1 = Convert.ToInt32(Line[0]);
- int ktosum2 = Convert.ToInt32(Data.getItem(keyy1));
- int koutmath = ktosum1 + ktosum2;
- Data.setItem(Line[2], koutmath);
- } else if(keyy2 != null && keyy1 != null)
- {
- int ktosum1 = Convert.ToInt32(Data.getItem(keyy1));
- int ktosum2 = Convert.ToInt32(Data.getItem(keyy2));
- int koutmath = ktosum1 + ktosum2;
- Data.setItem(Line[0], koutmath);
- }
- else
- {
- int tosum1 = Convert.ToInt32(Line[0]);
- int tosum2 = Convert.ToInt32(Line[2]);
- int outmath = tosum1 + tosum2;
- Data.setItem(Line[1], outmath);
- }
- }
- else if (Line[1] == "-=")
- {
- string keyy1 = Data.getKey(Line[0]);
- string keyy2 = Data.getKey(Line[2]);
- if (keyy2 == null && keyy1 != null)
- {
- int ktosum1 = Convert.ToInt32(Data.getItem(keyy1));
- int ktosum2 = Convert.ToInt32(Line[2]);
- int koutmath = ktosum1 - ktosum2;
- Data.setItem(Line[0], koutmath);
- }
- else if (keyy2 != null && keyy1 == null)
- {
- int ktosum1 = Convert.ToInt32(Line[0]);
- int ktosum2 = Convert.ToInt32(Data.getItem(keyy1));
- int koutmath = ktosum1 - ktosum2;
- Data.setItem(Line[2], koutmath);
- }
- else if (keyy2 != null && keyy1 != null)
- {
- int ktosum1 = Convert.ToInt32(Data.getItem(keyy1));
- int ktosum2 = Convert.ToInt32(Data.getItem(keyy2));
- int koutmath = ktosum1 - ktosum2;
- Data.setItem(Line[0], koutmath);
- }
- else
- {
- int tosum1 = Convert.ToInt32(Line[0]);
- int tosum2 = Convert.ToInt32(Line[2]);
- int outmath = tosum1 - tosum2;
- Data.setItem(Line[1], outmath);
- }
- }
- else if (Line[1] == "*=")
- {
- string keyy1 = Data.getKey(Line[0]);
- string keyy2 = Data.getKey(Line[2]);
- if (keyy2 == null && keyy1 != null)
- {
- int ktosum1 = Convert.ToInt32(Data.getItem(keyy1));
- int ktosum2 = Convert.ToInt32(Line[2]);
- int koutmath = ktosum1 * ktosum2;
- Data.setItem(Line[0], koutmath);
- }
- else if (keyy2 != null && keyy1 == null)
- {
- int ktosum1 = Convert.ToInt32(Line[0]);
- int ktosum2 = Convert.ToInt32(Data.getItem(keyy1));
- int koutmath = ktosum1 * ktosum2;
- Data.setItem(Line[2], koutmath);
- }
- else if (keyy2 != null && keyy1 != null)
- {
- int ktosum1 = Convert.ToInt32(Data.getItem(keyy1));
- int ktosum2 = Convert.ToInt32(Data.getItem(keyy2));
- int koutmath = ktosum1 * ktosum2;
- Data.setItem(Line[0], koutmath);
- }
- else
- {
- int tosum1 = Convert.ToInt32(Line[0]);
- int tosum2 = Convert.ToInt32(Line[2]);
- int outmath = tosum1 * tosum2;
- Data.setItem(Line[1], outmath);
- }
- }
- if (Line[1] == "/=")
- {
- string keyy1 = Data.getKey(Line[0]);
- string keyy2 = Data.getKey(Line[2]);
- if (keyy2 == null && keyy1 != null)
- {
- int ktosum1 = Convert.ToInt32(Data.getItem(keyy1));
- int ktosum2 = Convert.ToInt32(Line[2]);
- int koutmath = ktosum1 / ktosum2;
- Data.setItem(Line[0], koutmath);
- }
- else if (keyy2 != null && keyy1 == null)
- {
- int ktosum1 = Convert.ToInt32(Line[0]);
- int ktosum2 = Convert.ToInt32(Data.getItem(keyy1));
- int koutmath = ktosum1 / ktosum2;
- Data.setItem(Line[2], koutmath);
- }
- else if (keyy2 != null && keyy1 != null)
- {
- int ktosum1 = Convert.ToInt32(Data.getItem(keyy1));
- int ktosum2 = Convert.ToInt32(Data.getItem(keyy2));
- int koutmath = ktosum1 / ktosum2;
- Data.setItem(Line[0], koutmath);
- }
- else
- {
- int tosum1 = Convert.ToInt32(Line[0]);
- int tosum2 = Convert.ToInt32(Line[2]);
- int outmath = tosum1 / tosum2;
- Data.setItem(Line[1], outmath);
- }
- }
- }
- else
- {
- if (Line[0] != "")
- {
- Console.WriteLine("Line " + Mark + " FATAL ERROR, COMMAND UNKNOWN");
- }
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement