Iscriviti ora!   
 
Cura-Calvizie.NET  Cura-Calvizie.NET      Game Maker - Creare DLL per GameMaker con... 
 



 Menù

Forum
Chat
Calvizie: domande e...

 Ultimi post forum

inf.
per piacere!chi mi indica come fare, in...

Tutto su: Internet...
Sapete che il nuovo browser Microsoft...

Il viso specchio...
molto interessante

Arriva l'AAC Shop!
Stiamo lavorando affinchè il nuovo AAC Shop...

Vendere disegni
Ho sentito che su ArcadiA si possono vedere...

innamorata persa...
..sono stata insieme ad un ragazzo , il...

Filastrocca di Fra...
Per favore, qualcuno ha per caso la base...

Ma non è...
Scusate, questo sarà più che altro uno...

Duke Nukem -...
Ciao raga sapete indicarmi dove posso...

VI PREGO...
Ciao ragà!!!!! Sono nuovo di questo...

Col vaccino non...
Col vaccino non resti incinta (da...

 


Game Maker - Creare DLL per GameMaker con visual basic NET


 
Game Maker - Creare DLL per GameMaker con visual basic NET

Con "Visual Basic" creiamo una nuova libreria di classi dove scriveremo le funzioni che vogliamo mettere nella DLL.
Ricordiamo che tutte le funzioni dovranno essere pubbliche.

Ecco la struttura di una funzione:
Public Function NomeFunzione (byval argument1 as tipo_argomento, byal argument2 as tipo_argomento,...) Tipo_restituito 'Funzione End Function


Varie spiegazioni:
Public Function: definisce una funzione pubblica. Al posto di function possiamo mettere sub se la funzione non restituisce alcun valore.
Nome Funzione: mettiamo qui il nome della nostra funzione
byval: dice a vb che l'argomento che segue non potrà essere modificato. Possiamo usare "byref" per essere in grado di modificare l'argomento una volta inserito

Tipo_argomento: è il tipo dell'argomento che passiamo da gm a vb.

Per le comunicazioni con gm possiamo usare "as Double" (per passare numeri reali) e "as String" (per stringhe)

Tipo_restituito: è il tipo che verrà restituito dalla funzione a gm, stesso ragionamento per tipo_argomento per quanto riguarda i tipi utilizzabili.

Per far ritornare un valore dalla nostra funzione dovremo assegnare un valore ad essa. Ad esempio, se abbiamo messo: "public function Somma (byval n1 as double, byval n2 as double) as double", dovremo mettere "Somma = valore da restituire", in questo caso "Somma = n1+n2"

Ecco un esempio di funzione:
--------------------------------------------------------------------------------------------------
Public Function Messaggio (ByVal caption As String, ByVal testo As String) As Double
Messaggio = MsgBox (testo, MsgBoxStyle. OkOnly, caption)
End Function
--------------------------------------------------------------------------------------------------

Trattiamo ora l'argomento "Come usare le funzioni create in GM".
Come prima cosa compiliamo la nostra DLL. Fatto questo sappiate che GM non può leggere direttamente dll create in dotnet,
pertanto dovremo utilizzare una seconda DLL.

Fortunatamente, questa seconda DLL è già stata fatta, la troviamo su yoyogames qui:
http://gmc. yoyogames.com/index.php?showtopic=317121, insieme a molte informazioni su come usarla.

Come utilizziamo la layer dll nel link precedente?
Creiamo un nostro script chiamandolo "Init" e mettiamoci questo script:

--------------------------------------------------------------------------------------------------
layer_init ();
dll = layer_loaddll ("nome file della dll");
global. Class1 = layer_createinstance (dll, "namespace. Class", 0) //Creo l'istanza della classe nella quale ho scritto le funzioni
//namespace e class dovrebbero essere inizialmente (se non modificate queste proprietà su vb quando create la dll)
//"ClassLibrary1. Class1", ovviamente se create altre classi continuate sostituendo a class1 il nome della classe scelta.
--------------------------------------------------------------------------------------------------


Creiamo un altro script (questo è riferito alla funzione di esempio "Messaggio") e mettiamoci:

--------------------------------------------------------------------------------------------------
layer_function (global. Class1, "Messaggio", ty_real, 2, argument0, argument1)

-------------------------------------------------------------------------------------------------

A questo punto prendiamo dalla classe 1 la funzione chiamata "Messaggio" che restituisce un valore reale (ty_real) e ha 2 argomenti ("caption" e "testo").
Richiamando lo script che abbiamo creato, utilizzeremo i due argomenti ("argument0" e "argument1") per la funzione presa dalla classe.
--------------------------------------------------------------------------------------------------

 

Super_Slascio della Freank-Expo




Autore: Freank

 Commenti
LEGGI TUTTI

News di attualità

La follia di Hitler...
Chi non conosce Charlie Chaplin alzi la...

Troppo affetto...
E' di poche settimane fa la sentenza della...

Spunti e spuntini...
Il post di oggi tratta un altro genere di...

Cucina: piccoli...
C'è chi ama cucinare tanto da farne una vera...

il disgusto di...
Università di Tokyo: arriva il primo robot...

 




pubblicità | siti partner | regole | visione | diritti | ufficio stampa | donazioni | scrivici
© 1999-2012 - P.IVA 02284690035 - Grafica, layout e contenuti sono di esclusiva proprietà di Cura-Calvizie.NET.

Web Design by ArcadiA Club

Powered by:
Spazi pubblicitari di alto livello