Der Anfang erinnert mich an CoD 4, der Rest an Halo ![]()
Einen verdammt guten Kompressionsalgorithmus hat das Ding. Ich nehme jetzt mal an, dass da keine Tricks dabei sind (es nichts herunterläd).
Der Anfang erinnert mich an CoD 4, der Rest an Halo ![]()
Einen verdammt guten Kompressionsalgorithmus hat das Ding. Ich nehme jetzt mal an, dass da keine Tricks dabei sind (es nichts herunterläd).
und ohne .def-Datei.
Wenn das nicht geht, ist vielleicht als Standart __stdcall eingetragen. Dann brobier mal
Eigentlich sollte der Compiler doch keinen Unterschied machen. Insofern sollte doch ein anderer Compiler auch funktionieren.
Und ich würde Microsoft Visual C++ empfehlen.
Man kann ihn kostenlos runterladen (natürlich nicht die Vollversion), der Compiler ist neuer als Dev-C++ und man hat auch noch C++.NET dabei (mit GUI-Editor).
super spiel kenn zwar das original nicht aber ist lustig zum spielen.
Also, einmal sind die Animationen des Spielercharakters besser, bzw. es gibt mehr.
Außerdem wird es auf dem IPod/IPhone durch kippen des IPods gesteuert und schießen tut man mit Drauftippen. Maus-/ Tastatursteuerung ist halt nicht so besondern.
Da irrst du dich.
Mit der IrrLicht (okay, die engine ist nicht in autoit gecodet, aber in autoit kann sie verwendet werden) ist es sehr wohl möglich, komplexe 3D Spiele zu schreiben.
Ich hab mal gehört, dass die Irrlicht-Engine aber einige Fehler hat (Memory-leaks).
Nein, es gibt nur normale Konstanten. Statt den zweiten könnte man Funktionen verwenden. Die sind in AutoIt etwas flexibler als in C++.
Es gibt vom Compiler / Interpreter definierte Präprozessorsymbole, aber man kann keine eigenen definieren.
Präprozessorbefehle werden in C++ ja auch hauptsächlich verwendet um einen Header nur einmal einzulesen und somit keine doppelten Definitionen aufkommen zu lassen:
macht das gleiche, wie in AutoIt:
#include-once
[/autoit]Dann gibt es noch Abfragen auf bestimme Compiler oder Compile-einstellungen oder Betriebssysteme:
#ifdef _WIN32
#if _MSC_VER < 1300 //Microsoft Visual-C++-Version
#if defined(__APPLE__) || defined(MACOSX)
#ifdef __GNUC__ //GNU-Compiler
#ifdef _DEBUG
Und ein weiterer Grund ist Zeitersparnis. Während bei Funktionen immer erst etwas abgefragt werden muss, kann man bestimmte Dinge, die schon zur Compiletime feststehen, vom Präprozessor definieren ohne dass beim Ausführen Zeit für irgendwelche Berechnungen oder Abfragen draufgeht.
Bei AutoIt ist das meiste hinfällig. Es gibt AutoIt-Standartbefehle dafür (Bsp.: #include-once). Es gibt nur einen Interpreter und nur ein Betriebssystem (Winows) und keinen Debug-Modus. Und AutoIt ist eine Interpretersprache und es gibt somit keine Zeitersparnis. Der COmpiler ist auch kein richtiger Compiler und das Skript wird trotzdem interpretiert (wenige Ausnahmen, Bsp: Icon der Exe bestimmen).
Die for-schleifen sind doch ganz einfach:
ist
For $i=0 To 99
;blabla
next
und
ist
For $i=0 To 99 step 2
;blabla
next
EDIT: Danke progandy, ich habs geändert, sonst kopiert es noch jemand raus und kann dann den Fehler nicht finden.
Kopier dir das in ein .Manifest-Datei:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<description>Beschreibung des Programms</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="X86"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
</assembly>
Alles anzeigen
und für die Manifest in der Resourcendatei hinzu.
Müsste mit
gehen, bin mir aber nicht sicher.
Bei mir hat es auch gereicht, die Manifest datei nur zum Projekt hinzuzufügen (Rechtsklick->datei hinzufügen -> manifest auswählen).
Du musst die Manifest-datei auch einbinden.
Lies dir mal DASdurch.
Entweder:
Local $structChar = "ptr[2];" & _
"DWORD[4];" & _
"char[83];"
Local $arrChar = DllStructCreate($structChar)
;für jedes Array den Pointer setzen
DllStructSetData($arrChar, 1, DllStructGetPtr($arrChar, 2), 1)
DllStructSetData($arrChar, 1, DllStructGetPtr($arrChar, 3), 2)
;die Array-Werte eintragen
DllStructSetData($arrChar, 2, processgetpid())
DllStructSetData($arrChar, 3, 'C:\\Dokumente und Einstellungen\\Besitzer\\Desktop\\dll+\\Dll\\bin\\Debug\\Dll.dll')
;DllCall('Dll.dll', 'int:cdecl', 'Debug', 'int', processgetpid(), 'Str', 'C:\\Dokumente und Einstellungen\\Besitzer\\Desktop\\dll+\\Dll\\bin\Debug\\Dll.dll')
DllCall ("Dll.dll","int:cdecl","Debug","ptr",DllStructGetPtr($arrChar,1))
;if @error then msgbox (0,'Error:',@error)
Func processgetpid($Name = 'Notepad.exe')
$i = ProcessList($Name)
Return $i[1][1]
EndFunc ;==>processgetpid
oder
Die Haltung der SPD ist ziemlich Scheiße. Sie waren an der Genehmigung beteiligt und sind auch für S21, aber jetzt nutzen sie nur die Gelegenheit, um mit einer Volksabstimmung die CDU vom Thron zu kegeln (schaffen sie aber nicht).
Jep hab mich verschrieben, ändert aber nichts am Ergebnis.
/ 2 verschiebt die Bits um einen nach rechts (alternativ könnte man auch >>1) verwenden.
Rechnen wir das mal per Hand durch (ich zeige hier nur die letzten 4 bits):
i = 0
in Binär: i = 0000
bit_a = 0000
& 0010
= 0000
um 1 nach rechts verschoben:
bit_a = 0000
bit_b = 0000
& 0001
= 0000
i = 1
in Binär: i = 0001
bit_a = 0001
& 0010
= 0000
um 1 nach rechts verschoben:
bit_a = 0000
bit_b = 0001
& 0001
= 0001
Alles anzeigen
Und das geht so weiter.
Ich kann deine Dateien nicht runterladen: Lost connection to MySQL server at 'reading authorization packet', system error: 0
Es wurde verboten. Allerdings gibt es immer noch Decompiler.
$VK = 5.90
$mwst = Round($VK /119 * 19, 2)
$VK_netto = Round($VK - $mwst, 2)
$EK = Round($VK_netto / 1.15, 2)
Die Werte in den Inputs können mit GUICtrlSetData gesetzt werden.
Ein Eurozeichen kannst du schreiben, indem du ALT gedrück hälst und dann auf dem Numpad 0128 eingibst.
Du könntest die Inputs außer VK auch auf readonly setzen. Dann kann man nichts falsches eingeben.
Denke auch daran, Punkte statt Kommata zu verwenden.
Wenn die Werte unbedingt auf 2 Zeichen hinterm Punkt enden müssen, verwende
[autoit]StringFormat("%.2f", $deineVariable)
[/autoit]dafür.
Ja, es ist aber extrem schwer.
Eine etwas einfachere Methoden wäre es, statt Maschinencode erstmal Assemmblercode zu generieren und den dann nurch den Flat-assembler zu jagen.
Vielleicht könnte man auch C++-Code generieren und den mit MinGW compilen, was vieles detlich einfacher machen würde, als den Assembler zu verwenden.
EDIT: Wenn du einen richtigen Compiler erstellen willst, solltest du erstmal das hier verstehen.