
/** memo.c ************************************/
/*                                            */
/* Copyright © 1988 by Digital Artists (DgA). */
/* All Rights reserved.                       */
/*                                            */
/**********************************************/

/*
Firma   : Digital Artist (DgA)
Objekt  : reederei/memo.c
Version : 1.0
Autor   : [RK]
Datum   : 09-09-1988
Status  : geheim
*/

#include <exec/types.h>
#include <intuition/intuition.h>
#include <graphics/text.h>
#include "reederei.h"

extern struct Window *Window;
extern struct TextAttr font[2];
extern struct Spieler Spieler[4];
extern struct Schiff schiffstyp[6];
extern USHORT *box2;
extern UBYTE Geld[14];
extern UBYTE zahl[7][11];

USHORT mepts[2][18] =
 {
  {0,0,499,0,499,99,1,99,1,0,498,0,498,99,0,99,0,0},
  {0,0,499,0,499,14,1,14,1,0,498,0,498,14,0,14,0,0}
 };

struct IntuiText meggtxt =
 {1,13,JAM2,17,2,&font[0],"Weiter",NULL};

struct Image meggim =
 {-2,-1,96,15,4,NULL,0xf,0x0,NULL};

struct Gadget megg =
 {NULL,380,80,92,13,GADGIMAGE|GADGHNONE,GADGIMMEDIATE,BOOLGADGET|REQGADGET,&meggim,NULL,&meggtxt,0L,NULL,0,NULL};

struct Border mebo[2] =
 {
  {0,0,13,0,JAM2,9,&mepts[1][0],&mebo[1]},
  {0,0,13,0,JAM2,9,&mepts[0][0],NULL}
 };

struct IntuiText metxt[23] =
 {
  {1,0,JAM2,405,3,&font[0],"Nachricht",&metxt[1]},
  {1,0,JAM2,10,3,&font[0],"Reeder",&metxt[2]},
  {1,0,JAM2,85,3,&font[0],NULL,NULL},

  {7,0,JAM2,15,25,&font[0],"Im Hafen ist kein Liegeplatz für ein",&metxt[4]},
  {7,0,JAM2,15,40,&font[0],"weiteres Schiff Ihrer Flotte frei.",NULL},

  {7,0,JAM2,15,25,&font[0],"Das Schiff wird in",&metxt[6]},
  {1,0,JAM2,188,25,&font[0],&zahl[0][0],&metxt[7]},
  {7,0,JAM2,0,25,&font[0],"Monaten fertig-",&metxt[8]},
  {7,0,JAM2,15,40,&font[0],"gestellt sein.",NULL},

  {7,0,JAM2,15,25,&font[0],"Die Anzahlung beträgt",&metxt[10]},
  {1,0,JAM2,222,25,&font[0],&Geld[0],&metxt[11]},
  {7,0,JAM2,15,40,&font[0],"Sie haben noch",&metxt[12]},
  {7,0,JAM2,160,40,&font[0],&zahl[0][0],&metxt[13]},
  {7,0,JAM2,0,40,&font[0],"Mio. Kapital",NULL},

  {7,0,JAM2,40,30,&font[0],"Sie sind im Augenblick nicht zahlungsfähig",&metxt[15]},
  {7,0,JAM2,40,50,&font[0],"genug, um das Schiff zu bestellen.",NULL},
  {0,0,JAM2,0,0,&font[0],NULL,NULL},

  {7,0,JAM2,50,30,&font[0],"Sie können die 20% Anzahlung",&metxt[18]},
  {7,0,JAM2,50,50,&font[0],"nicht aufbringen.",NULL},

  {11,0,JAM2,50,30,&font[0],"Sie können nicht Ihr einziges",&metxt[20]},
  {11,0,JAM2,50,50,&font[0],"fahrtüchtiges Schiff verkaufen !",NULL},

  {11,0,JAM2,40,30,&font[0],"Neuaufträge werden erst nach Auslieferung",&metxt[22]},
  {11,0,JAM2,40,50,&font[0],"des bestellten Schiffes angenommen.",NULL}
 };

struct Requester memo =
 {NULL,70,50,500,100,0,0,&megg,&mebo[0],&metxt[0],0,0,NULL,NULL,NULL,NULL,NULL};

Nachricht(pl,mode,data1)
SHORT pl;
int mode;
float data1;
 {
  struct IntuiMessage *memsg = NULL;

  metxt[2].IText = Spieler[pl].Name;
  meggim.ImageData = box2;

  if (mode == 0)
   metxt[2].NextText = &metxt[3];
  if (mode == 1)
   {
    metxt[2].NextText = &metxt[5];
    sprintf(&zahl[0][0],"%d",(int)data1);
    metxt[7].LeftEdge = 213+IntuiTextLength(metxt[6]);
   }
  if (mode == 2)
   {
    metxt[2].NextText = &metxt[9];
    sprintf(&Geld[0],"%3.1f Mio.",(float)data1);
    sprintf(&zahl[0][0],"%-3.1f",(float)Spieler[pl].Geld/1000);
    metxt[13].LeftEdge = 178+IntuiTextLength(&metxt[12]);
   }
  if (mode == 3)
   metxt[2].NextText = &metxt[14];
  if (mode == 4)
   metxt[2].NextText = &metxt[17];
  if (mode == 5)
   metxt[2].NextText = &metxt[19];
  if (mode == 6)
   metxt[2].NextText = &metxt[21];

  Request(&memo,Window);

  while (memsg->Class != GADGETDOWN)
   {
    while((memsg=(struct IntuiMessage *)GetMsg(Window->UserPort))==NULL);
    ReplyMsg(memsg);
   }

  EndRequest(&memo,Window);

  return;
 } 
