Visual Basic 2010 - Form nach erstellen der Anwendung hinz..
lima-city → Forum → Programmiersprachen → Programmieren mit .NET & Mono
auswerten
beispiel
benennen
code
computer
datei
einlesen
erstellen
erzeugt http
form
funktion
http
instanz
klasse level
level
programm
speichern
string
typischen eigenschaften
url
-
Hallo liebes Forum,
Ergänzung zum Titel:
Visual Basic 2010 - Form nach erstellen der Anwendung hinzufügen
Mein genaues Vorhaben:
Ich habe ein Spiel erstellt mit verschiedenen Leveln. Natürlich habe ich jetz nicht 100 Level erfunden. Ist es möglich einen Updater zu Programmieren, der nacherstellte Level´s von meinem FTP Account downloadet und sie anschliessend zu dem Programm hinzufügt.
Anmerkung:
Ich möchte nicht, das der Updater die komplette Anwendung neu downloadet!
Mit freundlichen Grüssen,
Paulmaster(s)
Beitrag zuletzt geändert: 5.1.2012 13:02:09 von paulmasters -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hallo paulmaster,
ob das einfach zu machen ist, hängt davon ab, in welcher Form Deine Level vorliegen.
Wenn es sich z.B. um simple Zip-Dateien handelt, die Grafiken und ein Paar Parameterdateien enthalten, dann ist das kein Problem.
Falls Du die Level hart gecoded hast, dann müsstest Du Dir eine Art Plug-In-System schreiben und die Level als Dlls bereitstellen. Dann lässt sich sowas auch machen.
Edit: Falls es der zweite Weg sein soll (der Thementitel impliziert es ja), dann habe ich hier noch einen Link, wie man ein Dll lädt und eine Instanz des darin enthaltenen Formulares erzeugt:
http://visualbasicnetcode.blogspot.com/2010/06/how-to-load-form-dynamically-in-visual.html
Beitrag zuletzt geändert: 5.1.2012 17:10:20 von darkpandemic -
Also ich empfehle auch die erste Variante...
zum Beispiel speicherst du jedes Level in einer eigenen Datei (z.B. 'Level_1.txt', 'Level_2.txt', ..., 'Level_n.txt') und lässt dann von deinem Programm jede Datei (dieses Typs --> hier *.txt) einlesen, auswerten und in einem Array speichern.
Private lLevelList as New ArrayList() Private Sub LiesNeueLevel() For Each sFilePath As String In My.Computer.FileSystem.GetFiles("C:\") Dim sFileContent As String = My.Computer.FileSystem.ReadAllText(sFilePath) 'Jetzt könntest du sFileContent auswerten und z.B. in einer (selbsterstellten) Klasse Level speichern Dim lLevel As Level = WerteLevelAus(sFileContent) 'Die Funktion WerteLevelAus, sowie die Klasse Level musst du natürlich noch erstellen lLevelList.Add(lLevel) Next End Sub
Um neue Level zu downloaden, kannst du ähnlich vorgehen. Eine Anleitung, wie du einen Download mit VB.NET realisierst, findest du hier (in der ersten Antwort):
http://social.msdn.microsoft.com/Forums/de/visualbasicde/thread/80d3ecbb-0029-4767-8167-43718ba6b3e4
Du könntest zum Beispiel jede Leveldatei auf deinem Server mit einem 'Zeit-Präfix' im Dateinamen benennen, sodass der Computer des Users prüfen kann, wann er das letzte Update gemacht hat und dadurch direkt weiß, welche Dateien er noch herunterladen muss.... -
vieleicht hilft dir das hier weiter.
http://www.vbarchiv.net/tipps/tipp_1113-http-dateidownload-mit-vbnet.html
MfG
Hanibal
-
Erst einmal vielen Dank für eure zahlreichen Beiträge!
Für mein Vorhaben scheint mir persönlich der Beitrag/Link von darkpandemic zu reichen:
Edit: Falls es der zweite Weg sein soll (der Thementitel impliziert es ja), dann habe ich hier noch einen Link, wie man ein Dll lädt und eine Instanz des darin enthaltenen Formulares erzeugt:
http://visualbasicnetcode.blogspot.com/2010/06/how-to-load-form-dynamically-in-visual.html
Ich werde dieses jetzt anhand eines einfachen Maze Game versuchen.
Mit freundlichen Grüßen,
Paulmaster(s)
-
Wäre es villeicht sinnvoller ein Ordner mit den LVL typischen eigenschaften (Karte,Punkte,Lebne) sowas als ini zu speichern und dann
eine funktion ide alle Inisin dem bestimmten ordner ausliest und dann das LVL so zusammen bauen kann ?
Dann könnten die benutzer auch immer selber neue LVL erstellen ? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage