Advertisement
Guest User

Untitled

a guest
Aug 25th, 2016
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.01 KB | None | 0 0
  1. boolean runSourceTerminalFile(string file) {
  2.     static {
  3.         string [string] fileType;
  4.             fileType[".edu"] = "educate";
  5.             fileType[".enh"] = "enhance";
  6.             fileType[".enq"] = "enquiry";
  7.             fileType[".ext"] = "extrude";
  8.        
  9.         int [string] extrudeCost;
  10.             extrudeCost["food.ext"] = 10;
  11.             extrudeCost["booze.ext"] = 10;
  12.             extrudeCost["goggles.ext"] = 100;
  13.             extrudeCost["familiar.ext"] = 10000;
  14.             extrudeCost["pram.ext"] = 100;
  15.             extrudeCost["gram.ext"] = 100;
  16.             extrudeCost["spam.ext"] = 100;
  17.             extrudeCost["cram.ext"] = 1000;
  18.             extrudeCost["dram.ext"] = 1000;
  19.             extrudeCost["tram.ext"] = 1000;
  20.     }
  21.    
  22.     if(item_amount($item[Source terminal]) == 0 && !is_unrestricted($item[Source terminal])) {
  23.         return false;
  24.     }
  25.     string fileExtension = substring(file, file.index_of("."));
  26.     if(!(get_property("sourceTerminal" + to_upper_case(substring(fileType[fileExtension], 0, 1)) + substring(fileType[fileExtension], 1) + "Known").contains_text(file))) {
  27.         return false;
  28.     }
  29.    
  30.     switch(fileExtension) {
  31.         case ".edu":
  32.             int maxEducates = 1 + (get_property("sourceTerminalChips").contains_text("DRAM")).to_int();
  33.             for i from 1 upto maxEducates {
  34.                 if(get_property("sourceTerminalEducate" + i) == file){
  35.                     return true;
  36.                 }
  37.             }
  38.            
  39.             break;         
  40.         case ".enh":
  41.             int maxEnhances = 1 + (get_property("sourceTerminalChips").contains_text("CRAM")).to_int() + (get_property("sourceTerminalChips").contains_text("SCRAM")).to_int();
  42.             if(get_property("_sourceTerminalEnhanceUses").to_int() >= maxEnhances) {
  43.                 return false;
  44.             }
  45.            
  46.             break;
  47.         case ".enq":
  48.             if(get_property("sourceTerminalEnquiry") == file) {
  49.                 return true;
  50.             }
  51.            
  52.             break;
  53.         case ".ext":
  54.             if(get_property("_sourceTerminalExtrudes").to_int() >= 3) {
  55.                 return false;
  56.             }
  57.             if(item_amount($item[Source essence]) < extrudeCost[file]) {
  58.                 return false;
  59.             }
  60.            
  61.             break;
  62.         default:
  63.             abort("The input file does not have a valid extension");
  64.     }  
  65.    
  66.     return cli_execute("terminal " + fileType[fileExtension] + " " + file);
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement