AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  Connexion  

Partagez | 
 

 temp reel Current_time

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Legends
Petit bavard
avatar

Messages : 54
Localisation : 28
Projet Actuel : Zakyro
jeu Android

MessageSujet: temp reel Current_time   Sam 6 Mai 2017 - 23:27

Bonjour j'ai enfin réussit a mettre en place le current time mais j'ai quelque soucis si on pouvait m'aider.
Je gagne 1 énergie toute les 15 minutes au bout de 5 énergie je voudrait que le décompte s'arrete et reste a 5 point maximum puis si on en utilise une que ça reparte.
Quand je clique sur mon obj_bouton on perd 1 énergie il faudrait que arriver a 0 il ne ce passe plus rien
merci pour votre aide.
Mon code pour mon obj_cloak :

Create
Code:
if !file_exists(working_directory + "pointdata") {

     var File = file_text_open_write(working_directory + "pointdata");
     file_text_write_real(File, 0);
     file_text_writeln(File);
     file_text_write_real(File, 15); ///temp point suivant
     file_text_close(File);
    
     global.Points = 0;
     TimeUntilNextPoint = 15;
    
     }else{
    
     var File = file_text_open_read(working_directory + "pointdata");
    
     global.Points = file_text_read_real(File);
     file_text_readln(File);
     TimeUntilNextPoint = file_text_read_real(File);
    
     file_text_close(File);
    
     }
    
WasOSPaused = false;

if file_exists(working_directory + "last_logout") {

      File = file_text_open_read(working_directory + "last_logout");
      
      var PreYear = file_text_read_real(File);
      file_text_readln(File);
      var PreMonth = file_text_read_real(File);
      file_text_readln(File);
      var PreDay = file_text_read_real(File);
      file_text_readln(File);
      var PreHour = file_text_read_real(File);
      file_text_readln(File);
      var PreMinute = file_text_read_real(File);
      file_text_readln(File);
      var PreSecond = file_text_read_real(File);
      
      file_text_close(File);
      
      MinSinceLastLogout = 60 * date_hour_span(date_create_datetime(PreYear, PreMonth, PreDay, PreHour, PreMinute, PreSecond), date_current_datetime());
      
      global.Points += MinSinceLastLogout div 60;
      TimeUntilNextPoint -= MinSinceLastLogout mod 60;
      
      if TimeUntilNextPoint <= 0 {
      
         global.Points += 1;
         TimeUntilNextPoint += 15;

      }
    
}

STEP

Code:
if os_is_paused() = false {

TimeUntilNextPoint -=1 / (room_speed *60);

if TimeUntilNextPoint <= 0 {

    global.Points += 1;
    TimeUntilNextPoint = 15;
   
    }
}

if os_is_paused() = true && WasOSPaused = false {

    RecordData();
   
    }
   
WasOSPaused = os_is_paused();

GAME END

Code:
RecordData();

DRAW

Code:
draw_set_font(fnt_points);
var Str = "Points: " + string(global.Points);
draw_text((room_width - string_width(Str)) / 2, (room_height / 2) - 64, Str)

draw_set_font(fnt_clock);
if (frac(TimeUntilNextPoint) * 60) >=10
{var Str1 = string(floor(frac(TimeUntilNextPoint) * 60));} else
{var Str1 = "0" + string(floor(frac(TimeUntilNextPoint) * 60));}
var Str2 = string(floor(TimeUntilNextPoint)) + ":" + Str1;
draw_text((room_width - string_width(Str2)) / 2, (room_height /2) + 128, Str2)

SCRIPT RecordData

Code:
var File = file_text_open_write(working_directory + "pointdata");
file_text_write_real(File, global.Points);
file_text_writeln(File);
file_text_write_real(File, TimeUntilNextPoint);
file_text_close(File);

File = file_text_open_write(working_directory + "last_logout");

file_text_write_real(File, current_year);
file_text_writeln(File);
file_text_write_real(File, current_month);
file_text_writeln(File);
file_text_write_real(File, current_day);
file_text_writeln(File);
file_text_write_real(File, current_hour);
file_text_writeln(File);
file_text_write_real(File, current_minute);
file_text_writeln(File);
file_text_write_real(File, current_second);

file_text_close(File);

_________________
fleche_d Pixel.Studio.Art fleche_g
Revenir en haut Aller en bas
Linky439
Utilisateur confirmé: Rang *****
avatar

Messages : 2609
Localisation : Sur le forum du CBNA...ou pas
Projet Actuel : La Galaxie Scellée

MessageSujet: Re: temp reel Current_time   Lun 8 Mai 2017 - 15:59

Ca ne me semble pas très compliqué Wink

Dans ton step, vérifie si ta variable global.Points a déjà atteint ou non ta valeur limite avant de l'incrémenter.
Ensuite, quand tu dis
Citation :
il faudrait que arriver a 0 il ne ce passe plus rien

Tu veux dire qu'on ne regagne plus d'énergie ?

Dans tous les cas, là encore, une solution assez simple me semble de juste mettre une boucle "si ma variable > 0 alors ..." devrait te permettre de résoudre ton problème Smile

_________________
Cliquez pour accéder aux topics dédiés !
   
Revenir en haut Aller en bas
Legends
Petit bavard
avatar

Messages : 54
Localisation : 28
Projet Actuel : Zakyro
jeu Android

MessageSujet: Re: temp reel Current_time   Lun 8 Mai 2017 - 19:50

STEP

Code:



STEP

Code:

If global . points  <=5  {
if os_is_paused() = false {

TimeUntilNextPoint -=1 / (room_speed *60);

if TimeUntilNextPoint <= 0 {

    global.Points += 1;
    TimeUntilNextPoint = 15;
    
    }
}
}

if os_is_paused() = true && WasOSPaused = false {

    RecordData();
    
    }
    
WasOSPaused = os_is_paused ();

Ça dans step ?  Le problème c'est que quand j'arrive à 5 points le décompte continue et plus par 15 mais de 30m il y a quelque chose qui doit pas aller


_________________
fleche_d Pixel.Studio.Art fleche_g
Revenir en haut Aller en bas
Linky439
Utilisateur confirmé: Rang *****
avatar

Messages : 2609
Localisation : Sur le forum du CBNA...ou pas
Projet Actuel : La Galaxie Scellée

MessageSujet: Re: temp reel Current_time   Mar 9 Mai 2017 - 12:45

Est-ce que ça aurait pas à voir avec le fait que tu aies écrit "global . points" au lieu de "global.Points" avec une majuscule à Points ?

A priori, GM prends en compte la casse, donc global.points!+global.Points si je ne m'abuse.

_________________
Cliquez pour accéder aux topics dédiés !
   
Revenir en haut Aller en bas
Contenu sponsorisé




MessageSujet: Re: temp reel Current_time   

Revenir en haut Aller en bas
 
temp reel Current_time
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Résolu: Lire GPS sur un Portable???
» agrandir l image et taille reel
» ecart temps inscrits "en ligne" et temps reel
» MIRACLE INATENDU MAIS BIEN REEL !!!
» Tuto Temp File Cleaner ( TFC )

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide débutants-
Sauter vers: