Dieser Leitfaden hilft Ihnen beim Erstellen einer einfachen provisorischen Datenbank. Sie können verschiedene Elemente wie Räume einbeziehen. Sie können auch benutzerdefinierte Typen für Dinge wie Bankkonten und Aufgaben hinzufügen.
Anwendung des Kodex
Um die Arbeit zu beschleunigen, optimieren Sie die Computergeschwindigkeit und stellen Sie sicher, dass der Datenbankcomputer endlos laufen kann. Verwenden Sie einen Schraubendreher mit dem Schraubendreher-Code, um sowohl den Datenbankcomputer (vorzugsweise den mit der Speicher-API) als auch den Arbeitsplatzcomputer im Polizeirevier, insbesondere den gelb markierten Computer mit der GetAllRooms-Funktion, anzupassen. Der Eckcomputer mit dem roten Bildschirm verfügt außerdem über die Speicher-API, was ihn zu einer bequemen Wahl macht.
Nachdem Sie beide Computer angepasst haben, hacken Sie sich in den Datenbankcomputer, den mit der Speicher-API oder den Speicherfunktionen zum Speichern/Laden. Nehmen Sie den Datenbankcode aus diesem Handbuch und wenden Sie ihn auf dem Computer an. Kompilieren Sie den Code und schließen Sie die Schnittstelle. Sie werden beobachten, wie der Code auf dem Bildschirm ausgeführt wird.
Hacken Sie sich nun in die Workstation mit gelbem Bildschirm ein und wenden Sie den Workstation-Code darauf an.
Derzeit gibt es eine Basisdemonstration. Es wird noch daran gearbeitet, ein Menü mit Optionen zum Schlürfen, Verschieben und Analysieren von Koordinaten zu erstellen. Durch Drücken der Eingabetaste ohne Eingabe wird durch die Listen geblättert.
Schraubendreher-Code
SetMhz(500) SetMaxTime(-2)
Datenbankcode
############################################## # Main Custom Functions #--------------------------------------------- #array GetItems(string type) #array GetTypes() #bool Save(string type,string name) ############################################## #Helper - For initial database setup Auto'd by Save() void createTypes() bool test = HasMemory('Types') if !test SaveMemory('Types',0) end end #Helper - Test blank input bool inputBlank(var test) if test == "" return True else return False end end #Helper - Check if database information has been imported void Setup() bool testDB = HasMemory('Database') if !testDB ClearText() Print("Database has not been built") Print("Running now...") Sleep(4) BuildDatabase() end end #Saves items to database bool Save(string type,string name) bool test = HasMemory(type) number qty number typesQty bool testTypes = HasMemory('Types') if inputBlank(type) return false end if inputBlank(name) return false end if testTypes else createTypes() end if test qty = LoadMemory(type) qty++ SaveMemory(type,qty) else typesQty = LoadMemory('Types') typesQty++ SaveMemory('Types' + typesQty,type) SaveMemory('Types',typesQty) qty = 1 SaveMemory(type,qty) end SaveMemory(type + qty,name) Print(type + qty) return true end #testing input function void fun() loop var typ = Input(':') if inputBlank(typ) return end if typ == 'exit' break end Save(typ,'name') Print(LoadMemory('Types') + ":Number of Types") end end #returns all types of items in database array GetTypes() array build number cnt = 1 string tem loop tem = 'Types' + cnt if HasMemory(tem) Append(build,LoadMemory(tem)) else return build end cnt++ end end #Returns all items of supplied type array GetItems(string type) number cnt = 1 array build string tem if inputBlank(type) return end bool available = HasMemory(type) if !available return end bool test loop tem = type + cnt test = HasMemory(tem) if test Append(build,LoadMemory(tem)) cnt++ else return build end end end #Helper - var PoliceAdmin() string computer = "PoliceOfficeInterior_MinistryOfficeWorkstationComputer_1" var con = Connect(computer) return con end #Helper - Builds database void BuildDatabase() array items string type bool saved var con = PoliceAdmin() array rooms = con.GetAllRooms() ClearMemories() ClearText() loop room in rooms type = "room" saved = Save(type,room) items = con.GetThingsInRoom(room) loop item in items type = con.GetTypeOfThing(item) saved = Save(type,item) end end ClearText() SaveMemory('Database',1) Print("Database Information Imported") end #Helper - void bar() Print("--------------------") end #Helper - Show and Select from an array var Select(array arr) number track number select number incr loop track = 0 select = 0 incr = 0 loop x from 0 to Count(arr) - 1 track++ incr++ Print(incr + ":" + arr[x]) if track == 5 track = 0 select = sel() ClearText() if select > -1 return arr[select] else if select == -2 break end end end end end #Helper to select() - Determine if number and return number sel() bool isNum string testNum loop isNum = true bar() testNum = Input(":>") if testNum == "0" isNum = false else if testNum == "" #Move Forward return -1 else if testNum == " " #Move Back return -2 else if testNum == "menu" or testNum == "exit" #return to menu return -3 end loop testNum if CharToInt(@) < -49 or CharToInt(@) > -40 isNum = false break end end if isNum == true break end end number num = testNum num-- return num end ############################################## Setup()
WorkStation-Code
#Helper - var PoliceMem() var con = Connect("PoliceOfficeInterior_TriPodComputer_TriPodComputer_1") return con end #Helper - void title(string title, number max) Print(max + ": " + title) bar(2) end void bar(number t) if t == 2 Print("--------------------") else if t == 1 Print("========= ===========") end end #Helper - Anzeigen und Auswählen aus einem Array var Select(array arr) number track number select number incr loop track = 0 select = 0 incr = 0 loop x from 0 to Count(arr) - 1 track++ incr++ Print(incr + ":" + arr[x]) if track == 5 track = 0 select = sel() ClearText() if select > -1 return arr[select] else if select == -2 break end end end end end #Helper für select() – Bestimmen Sie, ob die Nummer vorhanden ist, und geben Sie # Alte Auswahlfunktion zurück. Zahl muss überarbeitet oder ersetzt werden sel() bool isNum string testNum loop isNum = true bar(1) testNum = Input(":>") #if testNum == "0" # isNum = false if testNum == "" #Move Vorwärts, Rückkehr -1, sonst wenn testNum == " " #Move Zurück, Rückkehr -2, sonst wenn testNum == "menu" oder testNum == "exit" #zurück zum Menü, Rückkehr -3 Schleife beenden, testNum, wenn CharToInt(@) < -49 oder CharToInt(@) > -40 isNum = false break end end if isNum == true break end end number num = testNum num-- return num end # Alte Selectitem-Funktion. String SelectItem() muss überarbeitet oder ersetzt werden. var con = PoliceMem() arraytypes = con.GetTypes() string type = Select(types) array items = con.GetItems(type) string it = Select(items) return it end # void Position() string name = SelectItem() string target = "PoliceOfficeInterior_Diskette_Diskette6_1" SetPosition(name,target) end # string GetPName(string name) bool grab = false string Pname = GetPosition(name) string get = "" loop Pname if @ == " " grab = true else if @ == "," break else if grab == true get += @ end end return get end # string GetPCoor(string name) bool grab = false string Pname = GetPosition(name) string get loop Pname if @ == "(" grab = true else if @ == ")" break else if grab == true get += @ end end return get end string NewSelection(array myarr,string titl) number count = Count (myarr) Zahl cnt = 1 Zahl res Schleife ClearText() Titel(titl,count) if (cnt + 4) < count Schleife x von cnt bis (cnt +4) Print(x + ". " + myarr[x - 1]) end cnt += 5 else Schleife x von cnt bis count Print(x + ".
Das ist alles, was wir heute dafür teilen Sonst Heart.Break() führen. Dieses Handbuch wurde ursprünglich erstellt und geschrieben von KnustSinn. Falls wir dieses Handbuch nicht aktualisieren, finden Sie das neueste Update, indem Sie diesen folgen Link.