Gamestudio Links
Zorro Links
Newest Posts
Help with plotting multiple ZigZag
by degenerate_762. 04/30/24 23:23
M1 Oversampling
by 11honza11. 04/30/24 08:16
Trading Journey
by howardR. 04/28/24 09:55
Zorro Trader GPT
by TipmyPip. 04/27/24 13:50
Data from CSV not parsed correctly
by jcl. 04/26/24 11:18
Why Zorro supports up to 72 cores?
by jcl. 04/26/24 11:09
Eigenwerbung
by jcl. 04/26/24 11:08
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
2 registered members (degenerate_762, AndrewAMD), 877 guests, and 5 spiders.
Key: Admin, Global Mod, Mod
Newest Members
wandaluciaia, Mega_Rod, EternallyCurious, howardR, 11honza11
19049 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Lite C -> healthbar #392583
01/24/12 18:23
01/24/12 18:23
Joined: Oct 2008
Posts: 341
R
ratz Offline OP
Senior Member
ratz  Offline OP
Senior Member
R

Joined: Oct 2008
Posts: 341
Hallo
ich suche eine Möglichk ein Healthbar zu schreiben.
Im LiteC Workshop bzw. Aum 104 wird nur gezeigt, wie sich die Farbe verändert nicht aber wie die Healthbar kleiner wird

ich habs mal so versucht aber ich bekomme immer die Meldung Crash in main ...
Code:
///////////////////////////////
#include <acknex.h>
#include <default.c>

///////////////////////////////

#define health skill1		

#define MAXHEALTH 50		   //maximum health

////////////////////////////////////

function healthbar();

////////////////////////////////////

PANEL* health_pan = 
{
  bmap = "health.bmp";
  pos_x = 100;
  pos_y = 2;
  layer = 100;
  flags = VISIBLE;
}

////////////////////////////////////
function main()
{
 level_load(NULL);

 healthbar(); 
}

///////////////////////////////////

action healthbar()
{	
 my.health = MAXHEALTH;

 while(1)
 {
  
   health_pan.scale_x = my.health / MAXHEALTH;

		
  if(key_a)
  {
   my.health -= MAXHEALTH;
   
  }

  wait(1);
 } 
}




ich möchte gerne, dass die Anzeige langsam verschwindet und zugleich die Farbe ins rote wechselt ...

aber erstmal nur, das sie überhaubt kleiner wird wenn man z.b. taste A drück;)

was mache ich falsch ?

Last edited by ratz; 01/24/12 18:30.
Re: Lite C -> healthbar [Re: ratz] #392589
01/24/12 19:05
01/24/12 19:05
Joined: Jan 2002
Posts: 4,225
Germany / Essen
Uhrwerk Offline
Expert
Uhrwerk  Offline
Expert

Joined: Jan 2002
Posts: 4,225
Germany / Essen
Du rufst die Action healthbar aus deiner main function aus. In healthbar greifst Du auf den my pointer zu. Das kann nicht gutgehen. Wenn Du den my pointer verwenden willst, dann musst Du auch dafür sorgen, dass der Pointer gesetzt ist.


Always learn from history, to be sure you make the same mistakes again...
Re: Lite C -> healthbar [Re: Uhrwerk] #392594
01/24/12 19:38
01/24/12 19:38
Joined: Oct 2008
Posts: 341
R
ratz Offline OP
Senior Member
ratz  Offline OP
Senior Member
R

Joined: Oct 2008
Posts: 341
so gehts aber ich finde es nicht schön geschrieben

Code:
///////////////////////////////
#include <acknex.h>
#include <default.c>



function healthbar();

PANEL* health_pan = 
{
  bmap = "health.bmp";
  pos_x = 100;
  pos_y = 2;
  layer = 100;
  flags = VISIBLE;
}

function main()
{
 level_load(NULL);
 healthbar(); 
}

action healthbar()
{	
 while(1)
 {	
  if(key_a)
  {
  health_pan.scale_x -= 1*time_step;
  }
  wait(1);
 } 
}



Last edited by ratz; 01/24/12 19:39.
Re: Lite C -> healthbar [Re: ratz] #392598
01/24/12 19:49
01/24/12 19:49
Joined: Jan 2002
Posts: 4,225
Germany / Essen
Uhrwerk Offline
Expert
Uhrwerk  Offline
Expert

Joined: Jan 2002
Posts: 4,225
Germany / Essen
Was meinst Du mit "nicht schön geschrieben" ?


Always learn from history, to be sure you make the same mistakes again...
Re: Lite C -> healthbar [Re: Uhrwerk] #392605
01/24/12 21:00
01/24/12 21:00
Joined: Oct 2008
Posts: 341
R
ratz Offline OP
Senior Member
ratz  Offline OP
Senior Member
R

Joined: Oct 2008
Posts: 341
ich hab jetzt nochmal den Code aus Aum 104 genommen und eine healthbar gemacht
(von rot nach grün)

-> healthbar:



Code:
#include <acknex.h>
#include <default.c>

var players_health = 100;


BMAP* health_pcx = "grnbar.bmp";

PANEL* health_pan =
{
 pos_x = 10;
 pos_y = 20;
 layer = 10;

 window(50, 0, 128, 32, health_pcx, players_health, 0);
 flags = VISIBLE;
}


function health_startup()
{
  while (1)
  {
   if (key_1) players_health += 2 * time_step;
   if (key_2) players_health -= 2 * time_step;

   wait (1);
   }        
}

function main()
{
 level_load(NULL);
 health_startup(); 
}



achtung:
wenn die healthbar kleiner wird gehen die farben ins grüne statt ins rote ich hab die healthbar.bmp schon gespiegelt,gedreht,bearbeitet ect...

und:

wenn ich den wert auf 100 setzte wird meine healthbar immer kleiner
wie kann ich das beheben ?

Last edited by ratz; 01/24/12 21:04.
Re: Lite C -> healthbar [Re: ratz] #392650
01/25/12 13:58
01/25/12 13:58
Joined: Jun 2008
Posts: 146
Deutschland
M
M4sterm1nd Offline
Member
M4sterm1nd  Offline
Member
M

Joined: Jun 2008
Posts: 146
Deutschland
Originally Posted By: ratz

achtung:
wenn die healthbar kleiner wird gehen die farben ins grüne statt ins rote ich hab die healthbar.bmp schon gespiegelt,gedreht,bearbeitet ect...


Du hast den Verlauf falschrum.
Du schiebst ja das bmap nach links aus dem fenster raus.
also siehst du dann den grünen Teil.

Originally Posted By: ratz

wenn ich den wert auf 100 setzte wird meine healthbar immer kleiner
wie kann ich das beheben ?


Wie meinst du das?

Ausserdem benötigst du noch ein min bzw. max health damit du die bar nicht ganz aus dem Fenster herausschieben kannst.

Last edited by M4sterm1nd; 01/25/12 14:20.
Re: Lite C -> healthbar [Re: M4sterm1nd] #401435
05/19/12 10:54
05/19/12 10:54
Joined: Jul 2001
Posts: 4,801
netherlands
Realspawn Offline

Expert
Realspawn  Offline

Expert

Joined: Jul 2001
Posts: 4,801
netherlands
did you get it to work at all ? i am stumbeling over the same problem


Find all my tutorials & Workshops at : www.rp-interactive.nl

Creativity starts in the brain

Moderated by  HeelX, Lukas, rayp, Rei_Ayanami, Superku, Tobias, TWO, VeT 

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1