home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-387-Vol-3of3.iso / d / d-linux.zip / dm-dist / doc / newstruct.doc < prev    next >
Text File  |  1991-03-01  |  2KB  |  60 lines

  1. /* ************************************************************************
  2. *  Copyright (C) 1990, 1991 - see 'license.doc' for complete information. *
  3. ************************************************************************* */
  4.  
  5. FORSLAG TIL AENDRING af structure for PC's og NPC
  6.  
  7. Jeg foreslaar at char_data.skills laves om, og deles ud i to:
  8.  
  9. 1* HVIS der bliver brug for det, skal strukturen indeholde en
  10.      char_data.spells
  11.    som indeholder noedvendige oplysninger om alle spells, saa som
  12.    "learned" og "recognise" (som er i den nuvaerende skills[]).
  13.  
  14. 2* Der skal laves en ny struktur
  15.  
  16.    struct affected
  17.    {
  18.       byte duration;
  19.       byte modifier;
  20.       byte location;
  21.       int  bitvector;
  22.  
  23.       struct affected *next; 
  24.    }
  25.  
  26.    "duration" som i skills[]
  27.  
  28.    "modifier" angiver tallet der skal +/- til en abillity (fx. strength)
  29.               dette er ligeledes tallet der skal +/- (omvendt) naar
  30.               duration bliver 0.
  31.  
  32.    "location" angiver hvilken ability der er tale om, dvs om det er 
  33.               strengt_apply, ac_apply, thaco_apply, etc. (som i skills[])
  34.  
  35.   "bitvector" Her angives hvilken bit i en status, der er sat (og som skal
  36.               fjernes naar duration = 0). Bit kan fx. vaere BLINDED,
  37.               STUNNED, HELD, CHARMED, og andre helt specielle ting.
  38.               Disse "bit" skal der saa tages hoejde for i look, move
  39.               og andre procedurer.
  40.  
  41.     "*next"   peger paa naeste element.
  42.  
  43.    Gr. bitvektoren skal der saa indsaettes en 
  44.         int char_affected;
  45.      i selve char_data strukturen.
  46.  
  47. Et umiddelbart problem er, at man ikke kan gemme denne "affected" paa
  48. disken, men Sebastian foreslog, at kopiere listen over i et array i
  49. strukturen char_file_u, her skal der saa fastlaegges et maksimum antal
  50. elementer.
  51.  
  52. En anden fordel er, at ved nedtaelling af duration, undgaar vi at kigge
  53. paa alle 50 durations (i den gamle skill[]) da den nye struktur benytter
  54. haegter.
  55.  
  56.  
  57. S.U. Venligst, da jeg ikke kan implementere spells ordentligt uden en
  58.      aendring af et eller andet...
  59.  
  60.