Doppie 9MM
- Paperpaint
- Membro attivo
- Messaggi: 375
- Iscritto il: 02/01/2014, 16:19
- Specialità: Visionario lol
- Uso: GameMaker 8.1
- Contatta:
Doppie 9MM
Apro un altro posto perché effettivamente nell'ultimo non ha più risposto nessuno.
Intanto sono comparsi nuovi problemi.
1.Come fare in modo che una volta raccolta la 9mm, se sé ne trova un'altra, si possano unire in un solo slot ed usarle con entrambe le mani.
2.Evitare che la stessa arma occupi più slot se già presente nell'inventario(non posso avere nell'inventario più volte la stessa arma).
3.
[code]if pickupkey {
if inventory[0] != 0 {
if (inventory[0]==1) or (inventory[1]==1)
or (inventory[2]==1) or (inventory[3]==1){
instance_create(x,y,_9mm);
}
if(place_meeting(x,y,_9mm)){
if (inventory[0]==3) or (inventory[1]==3)
or (inventory[2]==3) or (inventory[3]==3){
instance_create(x,y,_shotgun);
}
}[/code]
Questo codice dovrebbe, creare un istanza, un 'arma diciamo. Quest'ultima dipende da un array (il fucile è 3).
Dovrei fare in modo che SE il player preme il pulsante P + uno dello slot, in qualsiasi posto si trovi il fucile, viene creata un'istanza. simulando l'azione di sostituzione.
Il fatto qual'è? Che lì c'è scritto SE incontri una 9mm, avviene lo scambio, ma visto che le armi sono tantissime, non posso fare un bordello di codice.
4.Dal momento che sarà un Roguelike, mi servirà un oggetto che spawni oggetti/powerup/armi a caso.
Devo fare inventory[0] = choose etc?
Grazie
Intanto sono comparsi nuovi problemi.
1.Come fare in modo che una volta raccolta la 9mm, se sé ne trova un'altra, si possano unire in un solo slot ed usarle con entrambe le mani.
2.Evitare che la stessa arma occupi più slot se già presente nell'inventario(non posso avere nell'inventario più volte la stessa arma).
3.
[code]if pickupkey {
if inventory[0] != 0 {
if (inventory[0]==1) or (inventory[1]==1)
or (inventory[2]==1) or (inventory[3]==1){
instance_create(x,y,_9mm);
}
if(place_meeting(x,y,_9mm)){
if (inventory[0]==3) or (inventory[1]==3)
or (inventory[2]==3) or (inventory[3]==3){
instance_create(x,y,_shotgun);
}
}[/code]
Questo codice dovrebbe, creare un istanza, un 'arma diciamo. Quest'ultima dipende da un array (il fucile è 3).
Dovrei fare in modo che SE il player preme il pulsante P + uno dello slot, in qualsiasi posto si trovi il fucile, viene creata un'istanza. simulando l'azione di sostituzione.
Il fatto qual'è? Che lì c'è scritto SE incontri una 9mm, avviene lo scambio, ma visto che le armi sono tantissime, non posso fare un bordello di codice.
4.Dal momento che sarà un Roguelike, mi servirà un oggetto che spawni oggetti/powerup/armi a caso.
Devo fare inventory[0] = choose etc?
Grazie
- Wolfrost
- Membro super
- Messaggi: 692
- Iscritto il: 03/08/2014, 13:08
- Specialità: Programmazione
- Uso: GM:Studio 1.4 Pro
- Località: Una galassia lontana lontana...
- Contatta:
Re: Doppie 9MM
Puoi postare tutto il codice che ormai non ricordo più? Inoltre potresti spiegare meglio quello che vuoi? Se vuoi un sistema più "sofisticato" di inventario, non è a me che devi rivolgerti, il mio codice è molto grezzo (e poi sono uno schifo a codare).Paperpaint ha scritto:Apro un altro posto perché effettivamente nell'ultimo non ha più risposto nessuno.
Intanto sono comparsi nuovi problemi.
1.Come fare in modo che una volta raccolta la 9mm, se sé ne trova un'altra, si possano unire in un solo slot ed usarle con entrambe le mani.
2.Evitare che la stessa arma occupi più slot se già presente nell'inventario(non posso avere nell'inventario più volte la stessa arma).
3.
[code]if pickupkey {
if inventory[0] != 0 {
if (inventory[0]==1) or (inventory[1]==1)
or (inventory[2]==1) or (inventory[3]==1){
instance_create(x,y,_9mm);
}
if(place_meeting(x,y,_9mm)){
if (inventory[0]==3) or (inventory[1]==3)
or (inventory[2]==3) or (inventory[3]==3){
instance_create(x,y,_shotgun);
}
}[/code]
Questo codice dovrebbe, creare un istanza, un 'arma diciamo. Quest'ultima dipende da un array (il fucile è 3).
Dovrei fare in modo che SE il player preme il pulsante P + uno dello slot, in qualsiasi posto si trovi il fucile, viene creata un'istanza. simulando l'azione di sostituzione.
Il fatto qual'è? Che lì c'è scritto SE incontri una 9mm, avviene lo scambio, ma visto che le armi sono tantissime, non posso fare un bordello di codice.
4.Dal momento che sarà un Roguelike, mi servirà un oggetto che spawni oggetti/powerup/armi a caso.
Devo fare inventory[0] = choose etc?
Grazie
- Paperpaint
- Membro attivo
- Messaggi: 375
- Iscritto il: 02/01/2014, 16:19
- Specialità: Visionario lol
- Uso: GameMaker 8.1
- Contatta:
Re: Doppie 9MM
Codice: Seleziona tutto
pickupkey = keyboard_check(ord('P'));
call_slot0 = keyboard_check(vk_space);
call_slot1 = keyboard_check_pressed(ord("1"));
call_slot2 = keyboard_check_pressed(ord("2"));
call_slot3 = keyboard_check_pressed(ord("3"));
call_slot4 = keyboard_check_pressed(ord("4"));
if place_meeting(x,y,_9mm) {
if pickupkey {
if (inventory[0]==0) {inventory[0] = 1;}
if(inventory[0] != 1){
if inventory[1]==0 {inventory[1] = 1;}
if(inventory[1] != 1){
if inventory[2]==0 {inventory[2] = 1;}
if(inventory[2] != 1){
if inventory[3]==0 {inventory[3] = 1;} else exit;
}
}
}}}
if place_meeting(x,y,mannaia) {
if pickupkey { if inventory[0]==0 inventory[0] = 2;
{
if inventory[4]==0 inventory[4] = 2;
}
}
}
if place_meeting(x,y,_shotgun) {
if pickupkey {
if (inventory[0]==0) {inventory[0] = 3;}
if(inventory[0] != 3){
if inventory[1]==0 {inventory[1] = 3;}
if(inventory[2] != 3){
if inventory[2]==0 {inventory[2] = 3;}
if(inventory[3] != 3){
if inventory[3]==0 {inventory[3] = 3;} else exit;
}
}
}}}
if(pickupkey){
if (inventory[0] == 1){
if(place_meeting(x,y,_shotgun))
{
inventory[0] = 3;
instance_create(x,y,_9mm);
}
}
if(inventory[0] == 3){
if(place_meeting(x,y,_9mm))
{
inventory[0] = 3;
instance_create(x,y,_shotgun);
}
}
}
else if inventory[0] == 0 {
if inventory[1] != 0 {
if inventory[1] == 1 instance_create(x,y,_9mm);
else if inventory[1] == 3 instance_create(x,y,_shotgun);
//else if inventory[1] == 4 instance_create(x,y,obj_AssaultRifle);
//else if inventory[1] == 5 instance_create(x,y,obj_Mitra);
}
}
if call_slot0 called_slot = 0;
if call_slot1 called_slot = 1;
if call_slot2 called_slot = 2;
if call_slot3 called_slot = 3;
if call_slot4 called_slot = 4;
switch (called_slot) {
case 0:
if(inventory[4]==2){
mann =true
}
break;
case 1:
if(inventory[0]== 1) or (inventory[1] == 1) or (inventory[2] == 1) or (inventory[3] == 1){
novemm = true;
}
if(inventory[0]== 3) or (inventory[1] == 3) or (inventory[2] == 3) or (inventory[3] == 3){
shotgun = true;
}
break;
case 2:
if(inventory[0]== 1) or (inventory[1] == 1) or (inventory[2] == 1) or (inventory[3] == 1){
novemm = true;
}
if(inventory[0]== 3) or (inventory[1] == 3) or (inventory[2] == 3) or (inventory[3] == 3){
shotgun = true;
}
break;
case 3:
if(inventory[0]== 1) or (inventory[1] == 1) or (inventory[2] == 1) or (inventory[3] == 1){
novemm = true;
}
if(inventory[0]== 3) or (inventory[1] == 3) or (inventory[2] == 3) or (inventory[3] == 3){
shotgun = true;
}
break;
case 4:
if(inventory[0]== 1) or (inventory[1] == 1) or (inventory[2] == 1) or (inventory[3] == 1){
novemm = true;
}
if(inventory[0]== 3) or (inventory[1] == 3) or (inventory[2] == 3) or (inventory[3] == 3){
shotgun = true;
}
break;
default: exit;
}
- Wolfrost
- Membro super
- Messaggi: 692
- Iscritto il: 03/08/2014, 13:08
- Specialità: Programmazione
- Uso: GM:Studio 1.4 Pro
- Località: Una galassia lontana lontana...
- Contatta:
Re: Doppie 9MM
Sì, c'è bisogno di rendere tutto questo codice più sofisticato, il problema è che neanche io saprei come fare, anzi lo renderei solo più complicato inutilmente Di conseguenza c'è bisogno di qualcuno più bravo di me, e fidati in questo forum ce ne sono parecchiPaperpaint ha scritto:Codice: Seleziona tutto
pickupkey = keyboard_check(ord('P')); call_slot0 = keyboard_check(vk_space); call_slot1 = keyboard_check_pressed(ord("1")); call_slot2 = keyboard_check_pressed(ord("2")); call_slot3 = keyboard_check_pressed(ord("3")); call_slot4 = keyboard_check_pressed(ord("4")); if place_meeting(x,y,_9mm) { if pickupkey { if (inventory[0]==0) {inventory[0] = 1;} if(inventory[0] != 1){ if inventory[1]==0 {inventory[1] = 1;} if(inventory[1] != 1){ if inventory[2]==0 {inventory[2] = 1;} if(inventory[2] != 1){ if inventory[3]==0 {inventory[3] = 1;} else exit; } } }}} if place_meeting(x,y,mannaia) { if pickupkey { if inventory[0]==0 inventory[0] = 2; { if inventory[4]==0 inventory[4] = 2; } } } if place_meeting(x,y,_shotgun) { if pickupkey { if (inventory[0]==0) {inventory[0] = 3;} if(inventory[0] != 3){ if inventory[1]==0 {inventory[1] = 3;} if(inventory[2] != 3){ if inventory[2]==0 {inventory[2] = 3;} if(inventory[3] != 3){ if inventory[3]==0 {inventory[3] = 3;} else exit; } } }}} if(pickupkey){ if (inventory[0] == 1){ if(place_meeting(x,y,_shotgun)) { inventory[0] = 3; instance_create(x,y,_9mm); } } if(inventory[0] == 3){ if(place_meeting(x,y,_9mm)) { inventory[0] = 3; instance_create(x,y,_shotgun); } } } else if inventory[0] == 0 { if inventory[1] != 0 { if inventory[1] == 1 instance_create(x,y,_9mm); else if inventory[1] == 3 instance_create(x,y,_shotgun); //else if inventory[1] == 4 instance_create(x,y,obj_AssaultRifle); //else if inventory[1] == 5 instance_create(x,y,obj_Mitra); } } if call_slot0 called_slot = 0; if call_slot1 called_slot = 1; if call_slot2 called_slot = 2; if call_slot3 called_slot = 3; if call_slot4 called_slot = 4; switch (called_slot) { case 0: if(inventory[4]==2){ mann =true } break; case 1: if(inventory[0]== 1) or (inventory[1] == 1) or (inventory[2] == 1) or (inventory[3] == 1){ novemm = true; } if(inventory[0]== 3) or (inventory[1] == 3) or (inventory[2] == 3) or (inventory[3] == 3){ shotgun = true; } break; case 2: if(inventory[0]== 1) or (inventory[1] == 1) or (inventory[2] == 1) or (inventory[3] == 1){ novemm = true; } if(inventory[0]== 3) or (inventory[1] == 3) or (inventory[2] == 3) or (inventory[3] == 3){ shotgun = true; } break; case 3: if(inventory[0]== 1) or (inventory[1] == 1) or (inventory[2] == 1) or (inventory[3] == 1){ novemm = true; } if(inventory[0]== 3) or (inventory[1] == 3) or (inventory[2] == 3) or (inventory[3] == 3){ shotgun = true; } break; case 4: if(inventory[0]== 1) or (inventory[1] == 1) or (inventory[2] == 1) or (inventory[3] == 1){ novemm = true; } if(inventory[0]== 3) or (inventory[1] == 3) or (inventory[2] == 3) or (inventory[3] == 3){ shotgun = true; } break; default: exit; }
- Paperpaint
- Membro attivo
- Messaggi: 375
- Iscritto il: 02/01/2014, 16:19
- Specialità: Visionario lol
- Uso: GameMaker 8.1
- Contatta:
Re: Doppie 9MM
Grazie [/quote] Se vuoi un sistema più "sofisticato" di inventario, non è a me che devi rivolgerti, il mio codice è molto grezzo (e poi sono uno schifo a codare).[/quote]
Ehh, il fatto è che non mi risponde nessuno su questo forum.
Shark, non mi risponde poi
Ehh, il fatto è che non mi risponde nessuno su questo forum.
Shark, non mi risponde poi
- gameplay_extreme
- GMI VIP
- Messaggi: 3824
- Iscritto il: 13/11/2010, 16:23
- Uso: GM:Studio 2
- Contatta:
Re: Doppie 9MM
come avrei fatto io (scusa il ritardo):
(non testato, almeno per il momento)
creazione di un inventario a 5 slot (ma il numero si può facilemente estendere fino a un numero maggiore)
(non testato, almeno per il momento)
creazione di un inventario a 5 slot (ma il numero si può facilemente estendere fino a un numero maggiore)
Spoiler
se ti capita di usare questo code, fammi sapere se funge, ciao!
clicca sul logo qui sopra per info e download riguardo ai miei software o per sapere come si crea un videogioco!
iscriviti qui gratuitamente a GMI !
Spoiler
- Wolfrost
- Membro super
- Messaggi: 692
- Iscritto il: 03/08/2014, 13:08
- Specialità: Programmazione
- Uso: GM:Studio 1.4 Pro
- Località: Una galassia lontana lontana...
- Contatta:
Re: Doppie 9MM
I for ho sempre avuto paura ad usarli con il game maker C'ho la ciclo-fobia su GMgameplay_extreme ha scritto:come avrei fatto io (scusa il ritardo):
(non testato, almeno per il momento)
creazione di un inventario a 5 slot (ma il numero si può facilemente estendere fino a un numero maggiore)
Spoilerse ti capita di usare questo code, fammi sapere se funge, ciao!
EDIT: Gran bel codice, però
- Alv
- Membro
- Messaggi: 133
- Iscritto il: 14/11/2014, 22:33
- Specialità: Programmazione
- Uso: GM:Studio 1.4 Pro
- Località: Sicilia
- Contatta:
Re: Doppie 9MM
Io realizzerei l'inventario tramite una serie di script.
Script "inv_init": inizializza l'inventario, dato il numero di slot.
La variabile "count" indica il numero di armi presenti nell'inventario (inizialmente 0). Ogni arma è identificata da un numero (esempio: 0 pistola, 3 fucile). -1 significa slot vuoto. Inizialmente tutti gi slot sono posti a -1. Trucchetto: consideriamo la doppia 9mm come un'arma a sé stante. (Quindi il numero 0 identifica la 9mm, il numero 1 la doppia 9mm.)
Ci serve un altro script: 'inv_find'. Dato il numero di un'arma, cerca l'arma nell'inventario, e restituisce il numero dello slot in cui l'arma si trova. Restituisce -1 se l'arma non viene trovata.
Ultimo script: 'inv_add'. Aggiunge un'arma all'inventario, dato il numero.
Prendiamo l'oggetto Player; nell'evento Create, chiamiamo inv_init. Aggiungiamo un evento collision per ogni arma. Collisione con fucile: se il fucile non è presente nell'inventario, lo aggiunge, e distrugge l'oggetto fucile con cui il player è entrato in collisione.
Collisione con 9mm: il codice è un po' più complicato.
Spiegazione: cerca la doppia 9mm. Se la doppia è nell'inventario, fine. Altrimenti, cerca la 9mm singola. Se non è presente, la aggiunge. Se la trova, la muta in una doppia 9mm.
Il codice l'ho ricontrollato ma non l'ho testato. Spero funzioni! Ma nel gioco le armi si possono scartare? Perchè in tal caso bisognerebbe implementare anche degli script per rimuovere le armi...
Script "inv_init": inizializza l'inventario, dato il numero di slot.
Codice: Seleziona tutto
nslots=argument0;
var i;
for (i=0;i<nslots;i+=1)
inv[i]=-1;
count=0;
Ci serve un altro script: 'inv_find'. Dato il numero di un'arma, cerca l'arma nell'inventario, e restituisce il numero dello slot in cui l'arma si trova. Restituisce -1 se l'arma non viene trovata.
Codice: Seleziona tutto
var i;
for (i=0;i<count;i+=1)
if (inv[i]==argument0)
return i;
return -1;
Codice: Seleziona tutto
inv[count]=argument0;
count+=1;
Codice: Seleziona tutto
if (inv_find(3)==-1) {
inv_add(3);
with (other)
instance_destroy();
}
Codice: Seleziona tutto
var gun_index;
if (inv_find(1)==-1) {
gun_index=inv_find(0);
if (gun_index==-1) {
inv_add(3);
else
inv[gun_index]=1;
with (other)
instance_destroy();
}
Il codice l'ho ricontrollato ma non l'ho testato. Spero funzioni! Ma nel gioco le armi si possono scartare? Perchè in tal caso bisognerebbe implementare anche degli script per rimuovere le armi...
Ultima modifica di Alv il 18/01/2021, 16:56, modificato 10 volte in totale.
- Paperpaint
- Membro attivo
- Messaggi: 375
- Iscritto il: 02/01/2014, 16:19
- Specialità: Visionario lol
- Uso: GameMaker 8.1
- Contatta:
Re: Doppie 9MM
Certo che si scartano.Alv ha scritto:Io realizzerei l'inventario tramite una serie di script.
script 'inv_init': inizializza l'inventario, dato il numero di slotLa variabile 'count' indica il numero di armi presenti nell'inventario (inizialmente 0).Codice: Seleziona tutto
nslots=argument0; var i; for (i=0;i<nslots;i+=1) inv[i]=-1; count=0;
Ogni arma è identificata da un numero. Es. 0 pistola, 3 fucile. -1 significa slot vuoto. Inizialmente tutti gi slot sono posti a -1.
Trucchetto: consideriamo la doppia 9mm come un'arma a se stante. (Quindi il numero 0 identifica la 9mm , il numero 1 la doppia 9mm.)
Ci serve un altro script, 'inv_find':
Dato il numero di un'arma, cerca l'arma nell'inventario e restituisce il numero dello slot in cui l'arma si trova.
Restituisce -1 se l'arma non viene trovata.Ultimo script: 'inv_add'. Aggiunge un'arma all'inventario, dato il numero:Codice: Seleziona tutto
var i; for (i=0;i<count;i+=1) if (inv[i]==argument0) return i; return -1;
Prendiamo l'oggetto Player, nell'evento Create chiamiamo inv_init.Codice: Seleziona tutto
inv[count]=argument0; count+=1;
Aggiungiamo un evento collision per ogni arma (quindi: collision with 9mm, collision with fucile).
Collisione con fucile: se il fucile non è presente nell'inventario, lo aggiunge e distrugge l'oggetto fucile con cui il player è entrato in collisione.Collisione con 9mm, il codice è un pò più complicato.Codice: Seleziona tutto
if (inv_find(3)==-1) { inv_add(3); with (other) instance_destroy(); }
Spiegazione: cerca la doppia 9mm. Se la doppia è nell'inventario, fine.Codice: Seleziona tutto
var gun_index; if (inv_find(1)==-1) { gun_index=inv_find(0); if (gun_index==-1) { inv_add(3); else inv[gun_index]=1; with (other) instance_destroy(); }
Altrimenti cerca la 9mm singola. Se non è presente, la aggiunge.
Se la trova, la muta in una doppia 9mm.
Il codice l'ho ricontrollato ma non l'ho testato. Spero funzioni.
Ma nel gioco le armi si possono scartare? Perchè in tal caso bisognerebbe implementare anche degli script per rimuovere le armi.
Basta tenere premuto uno slot da 1 a 4 e poi premere P, per sostituire un arma: ho fucile, ho per terra pistola = comando = prendo pistola, lascio fucile.
- gameplay_extreme
- GMI VIP
- Messaggi: 3824
- Iscritto il: 13/11/2010, 16:23
- Uso: GM:Studio 2
- Contatta:
Re: Doppie 9MM
Alv ha scritto:Ma nel gioco le armi si possono scartare?
il code che ho postato io a già questa featurePaperpaint ha scritto:Certo che si scartano.
clicca sul logo qui sopra per info e download riguardo ai miei software o per sapere come si crea un videogioco!
iscriviti qui gratuitamente a GMI !
Spoiler
- Paperpaint
- Membro attivo
- Messaggi: 375
- Iscritto il: 02/01/2014, 16:19
- Specialità: Visionario lol
- Uso: GameMaker 8.1
- Contatta:
Re: Doppie 9MM
SCUSA!gameplay_extreme ha scritto:Alv ha scritto:Ma nel gioco le armi si possono scartare?il code che ho postato io a già questa featurePaperpaint ha scritto:Certo che si scartano.
Non l'avevo visto
Lo provo subito!
- Paperpaint
- Membro attivo
- Messaggi: 375
- Iscritto il: 02/01/2014, 16:19
- Specialità: Visionario lol
- Uso: GameMaker 8.1
- Contatta:
Re: Doppie 9MM
Ma dove li devo mettere scusa?gameplay_extreme ha scritto:come avrei fatto io (scusa il ritardo):
(non testato, almeno per il momento)
creazione di un inventario a 5 slot (ma il numero si può facilemente estendere fino a un numero maggiore)
Spoilerse ti capita di usare questo code, fammi sapere se funge, ciao!
- gameplay_extreme
- GMI VIP
- Messaggi: 3824
- Iscritto il: 13/11/2010, 16:23
- Uso: GM:Studio 2
- Contatta:
Re: Doppie 9MM
allora, cerco di chiarire la faccenda...Ma dove li devo mettere scusa?
scr: inventory_init() //main initialization (inventario inizialmente vuoto)
mettilo all' AVVIO del gioco o quando vuoi svuotare/azzerare TUTTO l'inventario
scr: sel_inventory_slot(numero slot)
usalo per selezionare/eveidenziare uno slot (un solo slot può essere evidenziato). Adesso che ci penso non c'è n controllo che evita di selezionare uno slot vuoto...va beh...prima o poi correggo...
scr: inv_slot_sel() // restituisce la stringa che identifica l'arma presente nello slot selezionato, se nessuno slot è selezionato
usalo per sapere il nome dell' arma selezionata
scr: inventory_weapon_add("nome arma")
usalo per aggiungere un' arma all'inventairo (nel primo slot vuoto a partire da destra)
scr: inventory_weapon_delete("nome arma")
usalo per cancellare un'arma specifica dall'inventario, per azzerare tutto l'inventario invece puoi usare semplicemente inventory_init( ) come già detto all'inizio del post
scr: draw_inventory_slots(distanza dell' inventario dalla sinistra dello screen di gioco, distanza dell' inventario dall' alto dello screen di gioco)
mettilo in draw_event di un oggetto che sia presente in tutte le stanze dove deve apparire il disegno dell' inventario
diciamo che gli script inventory_find_first_empty( ) e inventory_find_first("nome arma") sono ad uso interno...
clicca sul logo qui sopra per info e download riguardo ai miei software o per sapere come si crea un videogioco!
iscriviti qui gratuitamente a GMI !
Spoiler
- Paperpaint
- Membro attivo
- Messaggi: 375
- Iscritto il: 02/01/2014, 16:19
- Specialità: Visionario lol
- Uso: GameMaker 8.1
- Contatta:
Re: Doppie 9MM
Ma vuoi dire che devo metterli nello step Event dell'avatar?gameplay_extreme ha scritto:allora, cerco di chiarire la faccenda...Ma dove li devo mettere scusa?
scr: inventory_init() //main initialization (inventario inizialmente vuoto)
mettilo all' AVVIO del gioco o quando vuoi svuotare/azzerare TUTTO l'inventario
scr: sel_inventory_slot(numero slot)
usalo per selezionare/eveidenziare uno slot (un solo slot può essere evidenziato). Adesso che ci penso non c'è n controllo che evita di selezionare uno slot vuoto...va beh...prima o poi correggo...
scr: inv_slot_sel() // restituisce la stringa che identifica l'arma presente nello slot selezionato, se nessuno slot è selezionato
usalo per sapere il nome dell' arma selezionata
scr: inventory_weapon_add("nome arma")
usalo per aggiungere un' arma all'inventairo (nel primo slot vuoto a partire da destra)
scr: inventory_weapon_delete("nome arma")
usalo per cancellare un'arma specifica dall'inventario, per azzerare tutto l'inventario invece puoi usare semplicemente inventory_init( ) come già detto all'inizio del post
scr: draw_inventory_slots(distanza dell' inventario dalla sinistra dello screen di gioco, distanza dell' inventario dall' alto dello screen di gioco)
mettilo in draw_event di un oggetto che sia presente in tutte le stanze dove deve apparire il disegno dell' inventario
diciamo che gli script inventory_find_first_empty( ) e inventory_find_first("nome arma") sono ad uso interno...
- gameplay_extreme
- GMI VIP
- Messaggi: 3824
- Iscritto il: 13/11/2010, 16:23
- Uso: GM:Studio 2
- Contatta:
Re: Doppie 9MM
dici a me ??Ma vuoi dire che devo metterli nello step Event dell'avatar?
(le parole "step event" e "avatar" non ci sono da nessuna parte...)
clicca sul logo qui sopra per info e download riguardo ai miei software o per sapere come si crea un videogioco!
iscriviti qui gratuitamente a GMI !
Spoiler
- Paperpaint
- Membro attivo
- Messaggi: 375
- Iscritto il: 02/01/2014, 16:19
- Specialità: Visionario lol
- Uso: GameMaker 8.1
- Contatta:
Re: Doppie 9MM
Devo creare un nuovo script nella cartella script e basta?gameplay_extreme ha scritto:dici a me ??Ma vuoi dire che devo metterli nello step Event dell'avatar?
(le parole "step event" e "avatar" non ci sono da nessuna parte...)
- gameplay_extreme
- GMI VIP
- Messaggi: 3824
- Iscritto il: 13/11/2010, 16:23
- Uso: GM:Studio 2
- Contatta:
Re: Doppie 9MM
no, il mio code è formato da 8 script
scusa, avevo letto "ma che vuol dire che devo metterli nello step Event dell'avatar?" al posto di "Ma vuoi dire che devo metterli nello step Event dell'avatar?", ma per avatar intendi il giocatore per caso ?
scusa, avevo letto "ma che vuol dire che devo metterli nello step Event dell'avatar?" al posto di "Ma vuoi dire che devo metterli nello step Event dell'avatar?", ma per avatar intendi il giocatore per caso ?
clicca sul logo qui sopra per info e download riguardo ai miei software o per sapere come si crea un videogioco!
iscriviti qui gratuitamente a GMI !
Spoiler
- Paperpaint
- Membro attivo
- Messaggi: 375
- Iscritto il: 02/01/2014, 16:19
- Specialità: Visionario lol
- Uso: GameMaker 8.1
- Contatta:
Re: Doppie 9MM
Sìgameplay_extreme ha scritto:no, il mio code è formato da 8 script
scusa, avevo letto "ma che vuol dire che devo metterli nello step Event dell'avatar?" al posto di "Ma vuoi dire che devo metterli nello step Event dell'avatar?", ma per avatar intendi il giocatore per caso ?
- Paperpaint
- Membro attivo
- Messaggi: 375
- Iscritto il: 02/01/2014, 16:19
- Specialità: Visionario lol
- Uso: GameMaker 8.1
- Contatta:
Re: Doppie 9MM
Oh, ma ce se' remasto?gameplay_extreme ha scritto:no, il mio code è formato da 8 script
scusa, avevo letto "ma che vuol dire che devo metterli nello step Event dell'avatar?" al posto di "Ma vuoi dire che devo metterli nello step Event dell'avatar?", ma per avatar intendi il giocatore per caso ?
- Vallo92
- GMI Advanced
- Messaggi: 1508
- Iscritto il: 15/07/2011, 20:26
- Specialità: Grafico
- Uso: GM:Studio 2
- Contatta:
Re: Doppie 9MM
Mi pare sia stato abbastanza chiaro. Sono 8 script differenti.gameplay_extreme ha scritto:no, il mio code è formato da 8 script
Dovrai poi richiamare ogni script quando ti serve (ed anche qui gameplay è stato chiarissimo):
gameplay_extreme ha scritto: scr: inventory_init() //main initialization (inventario inizialmente vuoto)
mettilo all' AVVIO del gioco o quando vuoi svuotare/azzerare TUTTO l'inventario
scr: sel_inventory_slot(numero slot)
usalo per selezionare/eveidenziare uno slot (un solo slot può essere evidenziato). Adesso che ci penso non c'è n controllo che evita di selezionare uno slot vuoto...va beh...prima o poi correggo...
scr: inv_slot_sel() // restituisce la stringa che identifica l'arma presente nello slot selezionato, se nessuno slot è selezionato
usalo per sapere il nome dell' arma selezionata
scr: inventory_weapon_add("nome arma")
usalo per aggiungere un' arma all'inventairo (nel primo slot vuoto a partire da destra)
scr: inventory_weapon_delete("nome arma")
usalo per cancellare un'arma specifica dall'inventario, per azzerare tutto l'inventario invece puoi usare semplicemente inventory_init( ) come già detto all'inizio del post
scr: draw_inventory_slots(distanza dell' inventario dalla sinistra dello screen di gioco, distanza dell' inventario dall' alto dello screen di gioco)
mettilo in draw_event di un oggetto che sia presente in tutte le stanze dove deve apparire il disegno dell' inventario
diciamo che gli script inventory_find_first_empty( ) e inventory_find_first("nome arma") sono ad uso interno...
-Questi occhiali da sole le stanno benissimo. Vuole provarli con le lenti più scure?
- Si vede che le sto guardando le tette?
- Si
- Allora si
Chi c’è in linea
Visitano il forum: Nessuno e 68 ospiti