*********************************************************************** * * * Sample FlexForm Character Sheet * * * * by Armin D. Sykes (armin@teleport.com) * * Modified by Eric B. Smith (ericbsmith@earthling.net) * * With much thanks to many of the people who have written FlexForm * * files, I ripped off the best! ;-) * * * * This sheet has been modified to properly display characters created * * with G4Lite.gdf, a datafile by John Kono and myself. * * * * This file also covers Spells and Equipment if you wish to use * * Magic.gdf or EquipTL3.gdf. * *********************************************************************** var Num var SectionSpacer = .075 var lineCount = 7.2 *set up fonts FontName Times New Roman FontSize 10 FontStyle prn_Normal *lines per inch LPI lineCount *set up columns ColumnWidth (((Right_Margin - Left_Margin)-.2)/3) ************************************************************ ***** ***** STATS ***** ******************** ***** Define needed variables *************** var CostCol var StatCol var ScoreCol var BoxTop var BoxLeft var BoxBottom var BoxRight var MidLine1 var MidLine2 var Margin var LeftInset var boxCentre ******************** ***** initialize postion variables *************** var AttHeight = .45 set Margin = .05 set LeftInset = .35 set CostCol = (curLeftMargin + LeftInset - Margin) set StatCol = (#CostCol# + .1) set ScoreCol = (#StatCol# + .65) set boxCentre = (#AttHeight# / 2)- .17 ****************************** ***** Print ST and Fatigue ****************************** ******************** ***** ST box *************** set BoxLeft = (curLeftMargin + LeftInset) set BoxTop = %curline% set BoxRight = (curLeftMargin + column_width - (2*Margin)) set BoxBottom = (%curline% + (AttHeight - Margin)) set MidLine1 = ((#BoxLeft# + #boxRight#)/2)-Margin Box #BoxLeft# + Margin, #BoxTop# + Margin, #BoxRight# + Margin, #BoxBottom# + Margin, LTGREY, FILL BoxBorder #BoxLeft#, #BoxTop#, #BoxRight#, #BoxBottom#, WHITE, FILL ***** divide into ST and Fatigue boxes Line #MidLine1#, #BoxTop#, #MidLine1#, #BoxBottom# ********** ***** fill it ***** ***** print Cost and Fatigue headings FontSize 8 PrintAtRight "Cost", #CostCol#, %curline% FontStyle prn_BOLD PrintAtCenter "Hits Taken (of " & Hit Points.Score & ")", (#BoxRight# - #MidLine1#) / 2 + #MidLine1#, %curline% + .01 FontStyle prn_Normal ***** print ST cost FontSize 8 PrintAtRight ST.Points, #CostCol#, .05555555 + #BoxTop# + #boxCentre# ***** print ST score and text FontSize 18 FontStyle PRN_BOLD PrintAtLeft "ST:", #StatCol#, #BoxTop# + #boxCentre# PrintAtCenter ST.Score, #ScoreCol#, #BoxTop# + #boxCentre# FontStyle PRN_NORMAL ** * move down to the next section ** MoveDown AttHeight +.02 ****************************** ***** Print DX, IQ, and Basic Damage ****************************** ******************** ***** DX box *************** set BoxTop = %curLine% set BoxRight = (MidLine1) set BoxBottom = (%curLine% + (AttHeight - Margin)) Box #BoxLeft# + Margin, #BoxTop# + Margin, #BoxRight# + Margin, #BoxBottom# + Margin, LTGREY, FILL BoxBorder #BoxLeft#, #BoxTop#, #BoxRight#, #BoxBottom#, WHITE, FILL ********** ***** fill it ***** ***** print DX cost FontSize 8 PrintAtRight DX.Points, #CostCol#, .05555555 + #BoxTop# + #boxCentre# ***** print DX score and text FontSize 18 FontStyle PRN_BOLD PrintAtLeft "DX:", #StatCol#, #BoxTop# + #boxCentre# PrintAtCenter DX.Score, #ScoreCol#, #BoxTop# + #boxCentre# FontStyle PRN_NORMAL ******************** ***** IQ box *************** set BoxTop = (%curLine% + AttHeight+.02) * set BoxRight = (#BoxLeft# + 1) set BoxBottom = (BoxTop + (AttHeight - Margin)) Box #BoxLeft# + Margin, #BoxTop# + Margin, #BoxRight# + Margin, #BoxBottom# + Margin, LTGREY, FILL BoxBorder #BoxLeft#, #BoxTop#, #BoxRight#, #BoxBottom#, WHITE, FILL ********** ***** fill it ***** ***** print IQ cost FontSize 8 PrintAtRight IQ.Points, #CostCol#, .05555555 + #BoxTop# + #boxCentre# ***** print IQ score and text FontSize 18 FontStyle PRN_BOLD PrintAtLeft "IQ:", #StatCol#, #BoxTop# + #boxCentre# PrintAtCenter IQ.Score, #ScoreCol#, #BoxTop# + #boxCentre# FontStyle PRN_NORMAL ******************** ***** basic damage box *************** set BoxLeft = (#MidLine1# + Margin+.02) set BoxTop = %curLine% set BoxRight = (curLeftMargin + column_width - (2*Margin)) set BoxBottom = (#BoxTop# + #AttHeight# + #AttHeight#+.02) - #Margin# Box #BoxLeft# + Margin, #BoxTop# + Margin, #BoxRight# + Margin, #BoxBottom# + Margin, LTGREY, FILL BoxBorder #BoxLeft#, #BoxTop#, #BoxRight#, #BoxBottom#, WHITE, FILL FontSize 8 FontStyle PRN_BOLD PrintAtCenter "Damage", (#BoxRight# - #BoxLeft#) / 2 + #BoxLeft#, %curLine% + .01 FontStyle PRN_NORMAL ********** ***** fill it ***** FontSize 8 set num = ((#BoxRight# - #BoxLeft#) / 2) + #BoxLeft# + Margin if Striking Strength = 0 if ST < 3 PrintAtLeft " 1d-6", #num#, %curline% + lpi PrintAtLeft " 1d-5", #num#, %curline% + lpi * 2 endif if ST = 3 PrintAtLeft " 1d-5", #num#, %curline% + lpi PrintAtLeft " 1d-4", #num#, %curline% + lpi * 2 endif if ST = 4 PrintAtLeft " 1d-5", #num#, %curline% + lpi PrintAtLeft " 1d-4", #num#, %curline% + lpi * 2 endif if ST = 5 PrintAtLeft " 1d-4", #num#, %curline% + lpi PrintAtLeft " 1d-3", #num#, %curline% + lpi * 2 endif if ST = 6 PrintAtLeft " 1d-4", #num#, %curline% + lpi PrintAtLeft " 1d-3", #num#, %curline% + lpi * 2 endif if ST = 7 PrintAtLeft " 1d-3", #num#, %curline% + lpi PrintAtLeft " 1d-2", #num#, %curline% + lpi * 2 endif if ST > 7 PrintAtLeft " " & BaseTH, #num#, %curline% + lpi PrintAtLeft " " & BaseSW, #num#, %curline% + lpi * 2 endif endif if Striking Strength > 0 if Striking Strength < 3 PrintAtLeft " 1d-6", #num#, %curline% + lpi PrintAtLeft " 1d-5", #num#, %curline% + lpi * 2 endif if Striking Strength = 3 PrintAtLeft " 1d-5", #num#, %curline% + lpi PrintAtLeft " 1d-4", #num#, %curline% + lpi * 2 endif if Striking Strength > 3 if Striking Strength < 5 PrintAtLeft " 1d-5", #num#, %curline% + lpi PrintAtLeft " 1d-4", #num#, %curline% + lpi * 2 endif endif if Striking Strength = 5 PrintAtLeft " 1d-4", #num#, %curline% + lpi PrintAtLeft " 1d-3", #num#, %curline% + lpi * 2 endif if Striking Strength = 6 PrintAtLeft " 1d-4", #num#, %curline% + lpi PrintAtLeft " 1d-3", #num#, %curline% + lpi * 2 endif if Striking Strength = 7 PrintAtLeft " 1d-3", #num#, %curline% + lpi PrintAtLeft " 1d-2", #num#, %curline% + lpi * 2 endif if Striking Strength = 8 PrintAtLeft " 1d-3", #num#, %curline% + lpi PrintAtLeft " 1d-2", #num#, %curline% + lpi * 2 endif if Striking Strength = 9 PrintAtLeft " 1d-2", #num#, %curline% + lpi PrintAtLeft " 1d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 10 PrintAtLeft " 1d-2", #num#, %curline% + lpi PrintAtLeft " 1d", #num#, %curline% + lpi * 2 endif if Striking Strength = 11 PrintAtLeft " 1d-1", #num#, %curline% + lpi PrintAtLeft " 1d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 12 PrintAtLeft " 1d-1", #num#, %curline% + lpi PrintAtLeft " 1d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 13 PrintAtLeft " 1d", #num#, %curline% + lpi PrintAtLeft " 2d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 14 PrintAtLeft " 1d", #num#, %curline% + lpi PrintAtLeft " 2d", #num#, %curline% + lpi * 2 endif if Striking Strength = 15 PrintAtLeft " 1d+1", #num#, %curline% + lpi PrintAtLeft " 2d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 16 PrintAtLeft " 1d+1", #num#, %curline% + lpi PrintAtLeft " 2d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 17 PrintAtLeft " 1d+2", #num#, %curline% + lpi PrintAtLeft " 3d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 18 PrintAtLeft " 1d+2", #num#, %curline% + lpi PrintAtLeft " 3d", #num#, %curline% + lpi * 2 endif if Striking Strength = 19 PrintAtLeft " 2d-1", #num#, %curline% + lpi PrintAtLeft " 3d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 20 PrintAtLeft " 2d-1", #num#, %curline% + lpi PrintAtLeft " 3d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 21 PrintAtLeft " 2d", #num#, %curline% + lpi PrintAtLeft " 4d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 22 PrintAtLeft " 2d", #num#, %curline% + lpi PrintAtLeft " 4d", #num#, %curline% + lpi * 2 endif if Striking Strength = 23 PrintAtLeft " 2d+1", #num#, %curline% + lpi PrintAtLeft " 4d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 24 PrintAtLeft " 2d+1", #num#, %curline% + lpi PrintAtLeft " 4d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 25 PrintAtLeft " 2d+2", #num#, %curline% + lpi PrintAtLeft " 5d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 26 PrintAtLeft " 2d+2", #num#, %curline% + lpi PrintAtLeft " 5d", #num#, %curline% + lpi * 2 endif if Striking Strength = 27 PrintAtLeft " 3d-1", #num#, %curline% + lpi PrintAtLeft " 5d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 28 PrintAtLeft " 3d-1", #num#, %curline% + lpi PrintAtLeft " 5d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 29 PrintAtLeft " 3d", #num#, %curline% + lpi PrintAtLeft " 5d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 30 PrintAtLeft " 3d", #num#, %curline% + lpi PrintAtLeft " 5d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 31 PrintAtLeft " 3d+1", #num#, %curline% + lpi PrintAtLeft " 6d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 32 PrintAtLeft " 3d+1", #num#, %curline% + lpi PrintAtLeft " 6d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 33 PrintAtLeft " 3d+2", #num#, %curline% + lpi PrintAtLeft " 6d", #num#, %curline% + lpi * 2 endif if Striking Strength = 34 PrintAtLeft " 3d+2", #num#, %curline% + lpi PrintAtLeft " 6d", #num#, %curline% + lpi * 2 endif if Striking Strength = 35 PrintAtLeft " 4d-1", #num#, %curline% + lpi PrintAtLeft " 6d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 36 PrintAtLeft " 4d-1", #num#, %curline% + lpi PrintAtLeft " 6d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 37 PrintAtLeft " 4d", #num#, %curline% + lpi PrintAtLeft " 6d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 38 PrintAtLeft " 4d", #num#, %curline% + lpi PrintAtLeft " 6d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 39 PrintAtLeft " 4d+1", #num#, %curline% + lpi PrintAtLeft " 7d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 40 PrintAtLeft " 4d+1", #num#, %curline% + lpi PrintAtLeft " 7d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 41 PrintAtLeft " 4d+1", #num#, %curline% + lpi PrintAtLeft " 7d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 42 PrintAtLeft " 4d+1", #num#, %curline% + lpi PrintAtLeft " 7d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 43 PrintAtLeft " 4d+1", #num#, %curline% + lpi PrintAtLeft " 7d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 44 PrintAtLeft " 4d+1", #num#, %curline% + lpi PrintAtLeft " 7d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 45 PrintAtLeft " 5d", #num#, %curline% + lpi PrintAtLeft " 7d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 46 PrintAtLeft " 5d", #num#, %curline% + lpi PrintAtLeft " 7d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 47 PrintAtLeft " 5d", #num#, %curline% + lpi PrintAtLeft " 7d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 48 PrintAtLeft " 5d", #num#, %curline% + lpi PrintAtLeft " 7d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 49 PrintAtLeft " 5d", #num#, %curline% + lpi PrintAtLeft " 7d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 50 PrintAtLeft " 5d+2", #num#, %curline% + lpi PrintAtLeft " 8d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 51 PrintAtLeft " 5d+2", #num#, %curline% + lpi PrintAtLeft " 8d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 52 PrintAtLeft " 5d+2", #num#, %curline% + lpi PrintAtLeft " 8d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 53 PrintAtLeft " 5d+2", #num#, %curline% + lpi PrintAtLeft " 8d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 54 PrintAtLeft " 5d+2", #num#, %curline% + lpi PrintAtLeft " 8d-1", #num#, %curline% + lpi * 2 endif if Striking Strength = 55 PrintAtLeft " 6d", #num#, %curline% + lpi PrintAtLeft " 8d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 56 PrintAtLeft " 6d", #num#, %curline% + lpi PrintAtLeft " 8d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 57 PrintAtLeft " 6d", #num#, %curline% + lpi PrintAtLeft " 8d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 58 PrintAtLeft " 6d", #num#, %curline% + lpi PrintAtLeft " 8d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 59 PrintAtLeft " 6d", #num#, %curline% + lpi PrintAtLeft " 8d+1", #num#, %curline% + lpi * 2 endif if Striking Strength = 60 PrintAtLeft " 7d-1", #num#, %curline% + lpi PrintAtLeft " 9d", #num#, %curline% + lpi * 2 endif if Striking Strength = 61 PrintAtLeft " 7d-1", #num#, %curline% + lpi PrintAtLeft " 9d", #num#, %curline% + lpi * 2 endif if Striking Strength = 62 PrintAtLeft " 7d-1", #num#, %curline% + lpi PrintAtLeft " 9d", #num#, %curline% + lpi * 2 endif if Striking Strength = 63 PrintAtLeft " 7d-1", #num#, %curline% + lpi PrintAtLeft " 9d", #num#, %curline% + lpi * 2 endif if Striking Strength = 64 PrintAtLeft " 7d-1", #num#, %curline% + lpi PrintAtLeft " 9d", #num#, %curline% + lpi * 2 endif if Striking Strength = 65 PrintAtLeft " 7d+1", #num#, %curline% + lpi PrintAtLeft " 9d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 66 PrintAtLeft " 7d+1", #num#, %curline% + lpi PrintAtLeft " 9d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 67 PrintAtLeft " 7d+1", #num#, %curline% + lpi PrintAtLeft " 9d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 68 PrintAtLeft " 7d+1", #num#, %curline% + lpi PrintAtLeft " 9d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 69 PrintAtLeft " 7d+1", #num#, %curline% + lpi PrintAtLeft " 9d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 70 PrintAtLeft " 8d", #num#, %curline% + lpi PrintAtLeft " 10d", #num#, %curline% + lpi * 2 endif if Striking Strength = 71 PrintAtLeft " 8d", #num#, %curline% + lpi PrintAtLeft " 10d", #num#, %curline% + lpi * 2 endif if Striking Strength = 72 PrintAtLeft " 8d", #num#, %curline% + lpi PrintAtLeft " 10d", #num#, %curline% + lpi * 2 endif if Striking Strength = 73 PrintAtLeft " 8d", #num#, %curline% + lpi PrintAtLeft " 10d", #num#, %curline% + lpi * 2 endif if Striking Strength = 74 PrintAtLeft " 8d", #num#, %curline% + lpi PrintAtLeft " 10d", #num#, %curline% + lpi * 2 endif if Striking Strength = 75 PrintAtLeft " 8d+2", #num#, %curline% + lpi PrintAtLeft " 10d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 76 PrintAtLeft " 8d+2", #num#, %curline% + lpi PrintAtLeft " 10d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 77 PrintAtLeft " 8d+2", #num#, %curline% + lpi PrintAtLeft " 10d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 78 PrintAtLeft " 8d+2", #num#, %curline% + lpi PrintAtLeft " 10d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 79 PrintAtLeft " 8d+2", #num#, %curline% + lpi PrintAtLeft " 10d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 80 PrintAtLeft " 9d", #num#, %curline% + lpi PrintAtLeft " 11d", #num#, %curline% + lpi * 2 endif if Striking Strength = 81 PrintAtLeft " 9d", #num#, %curline% + lpi PrintAtLeft " 11d", #num#, %curline% + lpi * 2 endif if Striking Strength = 82 PrintAtLeft " 9d", #num#, %curline% + lpi PrintAtLeft " 11d", #num#, %curline% + lpi * 2 endif if Striking Strength = 83 PrintAtLeft " 9d", #num#, %curline% + lpi PrintAtLeft " 11d", #num#, %curline% + lpi * 2 endif if Striking Strength = 84 PrintAtLeft " 9d", #num#, %curline% + lpi PrintAtLeft " 11d", #num#, %curline% + lpi * 2 endif if Striking Strength = 85 PrintAtLeft " 9d+2", #num#, %curline% + lpi PrintAtLeft " 11d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 86 PrintAtLeft " 9d+2", #num#, %curline% + lpi PrintAtLeft " 11d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 87 PrintAtLeft " 9d+2", #num#, %curline% + lpi PrintAtLeft " 11d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 88 PrintAtLeft " 9d+2", #num#, %curline% + lpi PrintAtLeft " 11d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 89 PrintAtLeft " 9d+2", #num#, %curline% + lpi PrintAtLeft " 11d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 90 PrintAtLeft " 10d", #num#, %curline% + lpi PrintAtLeft " 12d", #num#, %curline% + lpi * 2 endif if Striking Strength = 91 PrintAtLeft " 10d", #num#, %curline% + lpi PrintAtLeft " 12d", #num#, %curline% + lpi * 2 endif if Striking Strength = 92 PrintAtLeft " 10d", #num#, %curline% + lpi PrintAtLeft " 12d", #num#, %curline% + lpi * 2 endif if Striking Strength = 93 PrintAtLeft " 10d", #num#, %curline% + lpi PrintAtLeft " 12d", #num#, %curline% + lpi * 2 endif if Striking Strength = 94 PrintAtLeft " 10d", #num#, %curline% + lpi PrintAtLeft " 12d", #num#, %curline% + lpi * 2 endif if Striking Strength = 95 PrintAtLeft " 10d+2", #num#, %curline% + lpi PrintAtLeft " 12d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 96 PrintAtLeft " 10d+2", #num#, %curline% + lpi PrintAtLeft " 12d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 97 PrintAtLeft " 10d+2", #num#, %curline% + lpi PrintAtLeft " 12d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 98 PrintAtLeft " 10d+2", #num#, %curline% + lpi PrintAtLeft " 12d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 99 PrintAtLeft " 10d+2", #num#, %curline% + lpi PrintAtLeft " 12d+2", #num#, %curline% + lpi * 2 endif if Striking Strength = 100 PrintAtLeft " 11d", #num#, %curline% + lpi PrintAtLeft " 13d", #num#, %curline% + lpi * 2 endif if Striking Strength > 100 PrintAtLeft " " & ThrustDam.score & "d" , #num#, %curline% + lpi PrintAtLeft " " & SwingDam.Score & "d" , #num#, %curline% + lpi * 2 endif endif PrintAtRight "Thrust: ", #num#, %curline% + lpi PrintAtRight "Swing: ", #num#, %curline% + lpi * 2 PrintAtRight "Punch: ", #num#, %curline% + lpi * 3 PrintAtRight "Kick: ", #num#, %curline% + lpi * 4 PrintAtRight ": ", #num#, %curline% + lpi * 5 ** * move down to the next section ** MoveDown (AttHeight * 2)+.04 ****************************** ***** Print HT and Hits Taken ****************************** ******************** ***** HT box *************** set BoxLeft = (curLeftMargin + LeftInset) set BoxTop = %curline% set BoxRight = (curLeftMargin + column_width - (2*Margin)) set BoxBottom = (%curline% + (AttHeight - Margin)) * set MidLine1 = (#BoxLeft# + 1) Box #BoxLeft# + Margin, #BoxTop# + Margin, #BoxRight# + Margin, #BoxBottom# + Margin, LTGREY, FILL BoxBorder #BoxLeft#, #BoxTop#, #BoxRight#, #BoxBottom#, WHITE, FILL ***** divide into HT and Hits boxes Line #MidLine1#, #BoxTop#, #MidLine1#, #BoxBottom# ********** ***** fill it ***** ***** print Hits Taken FontSize 8 FontStyle PRN_BOLD PrintAtCenter "Fatigue (of " & Fatigue.Score & ")", (#BoxRight# - #MidLine1#) / 2 + #MidLine1#, %curline% + .01 FontStyle PRN_NORMAL ***** print Hit Points FontSize 8 PrintAtRight HT.Points, #CostCol#, .05555555 + #BoxTop# + #boxCentre# ***** print HT score and text FontSize 18 FontStyle PRN_BOLD PrintAtLeft "HT:", #StatCol#, #BoxTop# + #boxCentre# PrintAtCenter HT.Score, #ScoreCol#, #BoxTop# + #boxCentre# FontStyle PRN_NORMAL ***** ***** END STATS ***** ************************************************************ ** * move down to the next section ** MoveTo (#BoxBottom# + #SectionSpacer#) ************************************************************ ***** ***** MOVEMENT ***** ******************** ***** MVMT box *************** set BoxLeft = (curLeftMargin + LeftInset) set BoxTop = %curline% set BoxRight = (curLeftMargin + column_width - (2*Margin)) set BoxBottom = (%curline% + (2* #AttHeight#)) set MidLine1 = (#BoxLeft# + (#BoxRight# - #BoxLeft#) / 3) set MidLine2 = (#BoxLeft# + (#BoxRight# - #BoxLeft#) / 3 * 2) Box #BoxLeft# + Margin, #BoxTop# + Margin, #BoxRight# + Margin, #BoxBottom# + Margin, LTGREY, FILL BoxBorder #BoxLeft#, #BoxTop#, #BoxRight#, #BoxBottom#, WHITE, FILL ***** divide into thirds Line #MidLine1#, #BoxTop#, #MidLine1#, #BoxBottom# Line #MidLine2#, #BoxTop#, #MidLine2#, #BoxBottom# ***** divide in sixths across horizontal Line #BoxLeft#, #BoxTop# + #AttHeight#, #BoxRight#, #BoxTop# + #AttHeight# ********** ***** fill it ***** ***** print Mvmt text FontSize 14 FontStyle PRN_BOLD PrintAtCenter "Mvmt", (#MidLine1# - #BoxLeft#) / 2 + #BoxLeft#, %curline% + lpi ***** print Basic Speed and text FontSize 10 FontStyle PRN_NORMAL PrintAtCenter "Speed", (#MidLine2# - #MidLine1#) / 2 + #MidLine1#, %curline% + .01 FontSize 12 PrintAtCenter Speed.Score, (#MidLine2# - #MidLine1#) / 2 + #MidLine1#, %curline% + lpi FontSize 8 FontStyle PRN_ITALIC PrintAtCenter "(HT+DX)/4", (#MidLine2# - #MidLine1#) / 2 + #MidLine1#, %curline% + lpi * 2 + .01 FontStyle PRN_NORMAL ***** print Move and text FontSize 9 FontStyle PRN_NORMAL PrintAtCenter "Basic Move", (#BoxRight# - #MidLine2#) / 2 + #MidLine2#, %curline% + .01 FontSize 12 PrintAtCenter Move.Score, (#BoxRight# - #MidLine2#) / 2 + #MidLine2#, %curline% + lpi FontSize 8 FontStyle PRN_ITALIC PrintAtCenter "Round Off", (#BoxRight# - #MidLine2#) / 2 + #MidLine2#, %curline% + lpi * 2 + .01 FontStyle PRN_NORMAL MoveDown #AttHeight# if Water Move = 0 ***** print Swim and text FontSize 10 FontStyle PRN_FONTNORMAL PrintAtCenter "Swim", (#MidLine1# - #BoxLeft#) / 2 + #BoxLeft#, %curline% + .01 FontSize 12 PrintAtCenter Swim.Score, (#MidLine1# - #BoxLeft#) / 2 + #BoxLeft#, %curline% + lpi FontSize 8 FontStyle PRN_FONTITALIC PrintAtCenter "(Base)", (#MidLine1# - #BoxLeft#) / 2 + #BoxLeft#, %curline% + lpi * 2 + .01 FontStyle PRN_NORMAL endif if Ground Move > 0 ***** print Water Move and text FontSize 9 FontStyle PRN_FONTNORMAL PrintAtCenter "Grnd. Move", (#MidLine1# - #BoxLeft#) / 2 + #BoxLeft#, %curline% + .01 FontSize 12 PrintAtCenter Ground Move.Score, (#MidLine1# - #BoxLeft#) / 2 + #BoxLeft#, %curline% + lpi FontSize 8 FontStyle PRN_FONTITALIC PrintAtCenter "", (#MidLine1# - #BoxLeft#) / 2 + #BoxLeft#, %curline% + lpi * 2 + .01 FontStyle PRN_NORMAL endif if Air Move > 0 ***** print Basic Speed and text FontSize 9 FontStyle PRN_NORMAL PrintAtCenter "Air Move", (#BoxRight# - #MidLine2#) / 2 + #MidLine1#, %curline% + .01 FontSize 12 PrintAtCenter Air Move.Score, (#BoxRight# - #MidLine2#) / 2 + #MidLine1#, %curline% + lpi FontSize 8 FontStyle PRN_ITALIC PrintAtCenter "Move * 2", (#BoxRight# - #MidLine2#) / 2 + #MidLine1#, %curline% + lpi * 2 + .01 FontStyle PRN_NORMAL endif if Water Move > 0 ***** print Water Move and text FontSize 9 FontStyle PRN_FONTNORMAL PrintAtCenter "Water Move", (#MidLine3# - #BoxLeft#) / 2 + #BoxRight#, %curline% + .01 FontSize 12 PrintAtCenter Water Move.Score, (#MidLine3# - #BoxLeft#) / 2 + #BoxRight#, %curline% + lpi FontSize 8 FontStyle PRN_FONTITALIC PrintAtCenter "(Base)", (#MidLine3# - #BoxLeft#) / 2 + #BoxRight#, %curline% + lpi * 2 + .01 FontStyle PRN_NORMAL endif ***** ***** END MOVEMENT ***** ************************************************************ ** * move down to the next section ** MoveTo (#BoxBottom# + #SectionSpacer#) ************************************************************ ***** ***** ENCUMBRANCE ***** var chkBoxTop var chkBoxLeft var chkBoxBottom var chkBoxRight var i *create a rectangle around the active defense stuff set BoxLeft = (curLeftMargin + LeftInset) set BoxTop = %curline% set BoxRight = (curLeftMargin + column_width - (2*Margin)) set BoxBottom = (%curline% + (7.5 * lpi)) + .05 Box #BoxLeft# + Margin, #BoxTop# + Margin, #BoxRight# + Margin, #BoxBottom# + Margin, LTGREY, FILL BoxBorder #BoxLeft#, #BoxTop#, #BoxRight#, #BoxBottom#, WHITE, FILL *fill it FontSize 12 FontStyle PRN_BOLD PrintAtLeft "Encumbrance", #BoxLeft# + .075, %curline% + .03 PrintAtRight "Move", #BoxRight# - .075, %curline% + .03 MoveDown (lpi * 1.5) For i = 1 To 6 *create a chkbox set chkBoxLeft = (#BoxLeft# + .075) set chkBoxTop = %curline% + .02 set chkBoxRight = (#chkBoxLeft# + lpi * .75) set chkBoxBottom = (%curline% + (lpi * .75) + .02) Box #chkBoxLeft# + .015, #chkBoxTop# + .015, #chkBoxRight# + .015, #chkBoxBottom# + .015, DKGREY, FILL BoxBorder #chkBoxLeft#, #chkBoxTop#, #chkBoxRight#, #chkBoxBottom#, WHITE, FILL *fill in information FontSize 8 FontStyle PRN_NORMAL if #i# = 1 then PrintAtLeft "Basic Lift", #chkBoxLeft# + .17, %curline% PrintAtRight "STxST/5", #chkBoxLeft# + 1.1, %curline% PrintAtRight Basic Lift.Score & " lbs", #chkBoxLeft# + 1.68, %curline% endif if #i# = 2 then PrintAtLeft "None (" & No Encumbrance Move Reduction.Score & ")", #chkBoxLeft# + .17, %curline% PrintAtRight "1xBL", #chkBoxLeft# + 1.1, %curline% PrintAtRight No Encumbrance.Score & " lbs", #chkBoxLeft# + 1.68, %curline% PrintAtRight No Encumbrance Move.Score, #chkBoxLeft# + 1.85, %curline% endif if #i# = 3 then PrintAtLeft "Light (" & Light Encumbrance Move Reduction.Score & ")", #chkBoxLeft# + .17, %curline% PrintAtRight "2xBL", #chkBoxLeft# + 1.1, %curline% PrintAtRight Light Encumbrance.Score & " lbs", #chkBoxLeft# + 1.68, %curline% PrintAtRight Light Encumbrance Move.Score, #chkBoxLeft# + 1.85, %curline% endif if #i# = 4 then PrintAtLeft "Med (" & Medium Encumbrance Move Reduction.Score & ")", #chkBoxLeft# + .17, %curline% PrintAtRight "3xBL", #chkBoxLeft# + 1.1, %curline% PrintAtRight Medium Encumbrance.Score & " lbs", #chkBoxLeft# + 1.68, %curline% PrintAtRight Medium Encumbrance Move.Score, #chkBoxLeft# + 1.85, %curline% endif if #i# = 5 then PrintAtLeft "Hvy (" & Heavy Encumbrance Move Reduction.Score & ")", #chkBoxLeft# + .17, %curline% PrintAtRight "6xBL", #chkBoxLeft# + 1.1, %curline% PrintAtRight Heavy Encumbrance.Score & " lbs", #chkBoxLeft# + 1.68, %curline% PrintAtRight Heavy Encumbrance Move.Score, #chkBoxLeft# + 1.85, %curline% endif if #i# = 6 then PrintAtLeft "X-Hvy (" & X-Heavy Encumbrance Move Reduction.Score & ")", #chkBoxLeft# + .17, %curline% PrintAtRight "10xBL", #chkBoxLeft# + 1.1, %curline% PrintAtRight X-Heavy Encumbrance.Score & " lbs", #chkBoxLeft# + 1.68, %curline% PrintAtRight X-Heavy Encumbrance Move.Score, #chkBoxLeft# + 1.85, %curline% endif MoveDown lpi Next ***** ***** END ENCUMBRANCE ***** ************************************************************ ** * move down to the next section ** MoveTo (#BoxBottom# + #SectionSpacer#) ************************************************************ ***** ***** ACTIVE DEFENSES ***** *create a rectangle around the active defense stuff set BoxLeft = (curLeftMargin + LeftInset) set BoxTop = %curline% set BoxRight = (curLeftMargin + column_width - (2*Margin)) set BoxBottom = (%curline% + (#AttHeight# - #Margin#) + .25) set MidLine1 = (#BoxRight# - #BoxLeft#) / 3 set boxCentre = #MidLine1# /2 set MidLine2 = (2 * #MidLine1#) + #BoxLeft# set MidLine1 = #MidLine1# + #BoxLeft# Box #BoxLeft# + Margin, #BoxTop# + Margin, #BoxRight# + Margin, #BoxBottom# + Margin, LTGREY, FILL BoxBorder #BoxLeft#, #BoxTop#, #BoxRight#, #BoxBottom#, WHITE, FILL *divide into thirds set num = #boxBottom# - #AttHeight# Line #MidLine1#, #num#, #MidLine1#, #BoxBottom# Line #MidLine2#, #num#, #MidLine2#, #BoxBottom# *put in SplitLine Line #BoxLeft#, #num#, #BoxRight#, #num# *fill it FontSize 12 FontStyle PRN_BOLD PrintAtCenter "Active Defenses", (#MidLine1# + #MidLine2#) / 2, %curline% + .03 ** set num = #boxBottom# - #AttHeight# FontSize 10 FontStyle PRN_NORMAL PrintAtCenter "Dodge", #boxCentre# + #BoxLeft#, #num# + .01 FontSize 12 PrintAtCenter Dodge.Score, #boxCentre# + #BoxLeft#, #num# + lpi FontSize 8 PrintAtCenter "3+Move", #boxCentre# + #BoxLeft#, #num# + lpi * 2 FontStyle PRN_NORMAL FontSize 10 FontStyle PRN_NORMAL PrintAtCenter "Parry", #boxCentre# + #MidLine1#, #num# + .01 FontSize 12 PrintAtCenter ParryScore, #boxCentre# + #MidLine1#, #num# + lpi FontSize 8 PrintAtCenter "3+(Skill/2)", #boxCentre# + #MidLine1#, #num# + lpi * 2 FontStyle PRN_NORMAL FontSize 10 FontStyle PRN_NORMAL PrintAtCenter "Block", #boxCentre# + #MidLine2#, #num# + .01 FontSize 12 PrintAtCenter BlockScore, #boxCentre# + #MidLine2#, #num# + lpi FontSize 8 PrintAtCenter "3+(Shield/2)", #boxCentre# + #MidLine2#, #num# + lpi * 2 FontStyle PRN_NORMAL ***** ***** END ACTIVE DEFENSES ***** ************************************************************ ** * move down to the next section ** MoveTo (#BoxBottom# + #SectionSpacer#) if ((%curline% + 1.8) > Bottom_Margin) then nextCol movedown lpi endif ************************************************************ ***** ***** BODY PROTECTION ***** var MidLine3 var MidLine4 var MidLine5 var MidLine6 var MidLine7 *create a rectangle around the active defense stuff set BoxLeft = (curLeftMargin + LeftInset) set BoxTop = %curline% set BoxRight = (curLeftMargin + column_width - (2*Margin)) var boxWide = ((#BoxRight# - #BoxLeft#) / 8) set BoxBottom = (#BoxTop# + .4 + (2* (#AttHeight# + #boxWide#))) set MidLine1 = (#BoxLeft# + (#boxWide# * 1)) set MidLine2 = (#BoxLeft# + (#boxWide# * 2)) set MidLine3 = (#BoxLeft# + (#boxWide# * 3)) set MidLine4 = (#BoxLeft# + (#boxWide# * 4)) set MidLine5 = (#BoxLeft# + (#boxWide# * 5)) set MidLine6 = (#BoxLeft# + (#boxWide# * 6)) set MidLine7 = (#BoxLeft# + (#boxWide# * 7)) Box #BoxLeft# + Margin, #BoxTop# + Margin, #BoxRight# + Margin, #BoxBottom# + Margin, LTGREY, FILL BoxBorder #BoxLeft#, #BoxTop#, #BoxRight#, #BoxBottom#, WHITE, FILL set num = #boxTop# + .4 var num1 = #BoxTop# + .4 + (2* #boxWide#) *put in SplitLines Line #BoxLeft#, #num#, #BoxRight#, #num# Line #BoxLeft#, #BoxTop# + .4 + #boxWide#, #BoxRight#, #BoxTop# + .4 + #boxWide# Line #BoxLeft#, #num1#, #BoxRight#, #num1# *divide into armor sections Line #MidLine1#, #num#, #MidLine1#, #num1# Line #MidLine2#, #num#, #MidLine2#, #num1# Line #MidLine3#, #num#, #MidLine3#, #num1# Line #MidLine4#, #num#, #MidLine4#, #BoxBottom# Line #MidLine5#, #num#, #MidLine5#, #num1# Line #MidLine6#, #num#, #MidLine6#, #num1# Line #MidLine7#, #num#, #MidLine7#, #num1# *fill it FontSize 12 FontStyle PRN_BOLD PrintAtCenter "Body Protection", #MidLine4#, %curline% + .02 set num = #%curline%# + .25 set boxWide = #boxWide# / 2 FontSize 8 FontStyle PRN_NORMAL PrintAtCenter "Head", #boxWide# + #MidLine1#, #num# PrintAtCenter "Body", #boxWide# + #MidLine2#, #num# PrintAtCenter "Arms", #boxWide# + #MidLine3#, #num# PrintAtCenter "Legs", #boxWide# + #MidLine4#, #num# PrintAtCenter "Hands", #boxWide# + #MidLine5#, #num# PrintAtCenter "Feet", #boxWide# + #MidLine6#, #num# PrintAtCenter "ALL", #boxWide# + #MidLine7#, #num# MoveDown (.4 + #boxWide# - .069444) FontSize 8 PrintAtCenter "PD", #boxWide# + #BoxLeft#, %curline% FontSize 8 PrintAtCenter PDHead, #boxWide# + #MidLine1#, %curline% PrintAtCenter PDBody, #boxWide# + #MidLine2#, %curline% PrintAtCenter PDArms, #boxWide# + #MidLine3#, %curline% PrintAtCenter PDLegs, #boxWide# + #MidLine4#, %curline% PrintAtCenter PDHands, #boxWide# + #MidLine5#, %curline% PrintAtCenter PDFeet, #boxWide# + #MidLine6#, %curline% PrintAtCenter PD.Score, #boxWide# + #MidLine7#, %curline% MoveDown (2* #boxWide#) FontSize 8 PrintAtCenter "DR", #boxWide# + #BoxLeft#, %curline% FontSize 8 PrintAtCenter DRHead, #boxWide# + #MidLine1#, %curline% PrintAtCenter DRBody, #boxWide# + #MidLine2#, %curline% PrintAtCenter DRArms, #boxWide# + #MidLine3#, %curline% PrintAtCenter DRLegs, #boxWide# + #MidLine4#, %curline% PrintAtCenter DRHands, #boxWide# + #MidLine5#, %curline% PrintAtCenter DRFeet, #boxWide# + #MidLine6#, %curline% PrintAtCenter DR.Score, #boxWide# + #MidLine7#, %curline% MoveDown .25 FontSize 8 FontStyle (PRN_NORMAL + PRN_UNDERLINE) PrintAtLeft "Other PD", #BoxLeft# + .1, %curline% PrintAtLeft "Other DR", #MidLine4# + .1, %curline% FontStyle PRN_NORMAL ******************** ***** Define the table to use in printing *************** set boxWide = (#MidLine4# - #BoxLeft# - .2) table Field head(spacer), width(LeftInSet + .1), align(prn_left) Field head(OtherPD), width(#boxWide#), align(prn_left) Field head(spacer), width(.2), align(prn_left) Field head(OtherDR), width(#boxWide#), align(prn_left) endtable MoveDown lpi tableprint "", OtherPD, "", OtherDR ***** ***** END BODY PROTECTION ***** ************************************************************ ************************************************************ ***** ***** POINT SUMMARY ***** MoveTo (#BoxBottom# + #SectionSpacer#) ******************** ***** Define the table to use in printing *************** table Field width(LeftInSet), align(prn_left) Field width(1.25), align(prn_left) Field width(.5), align(prn_right) endtable *************************************** FontStyle prn_Bold + prn_Underline tableprint "","Point Summary","" FontStyle prn_Normal ******************** ***** Print our point values using the tabled printing *************** tableprint "","Attributes", StatsCost if NumPowers then tableprint "","Powers", PowersCost endif tableprint "","Advantages", AdsCost tableprint "","Disadvantages", DisadsCost tableprint "","Quirks", QuirksCost tableprint "","Skills", SkillsCost if NumSpells then tableprint "","Spells", SpellsCost endif FontStyle prn_Bold tableprint "","Total", TotalCost FontStyle prn_Normal ***** ***** END POINT SUMMARY ***** ************************************************************ ** * move down to the next section ** *MoveTo (#BoxBottom# + #SectionSpacer#) if (%curcol% <> 1) then MoveTo (#BoxBottom# + #SectionSpacer#) endif if (%curcol% = 1) then NextCol endif ********** ***** restore font info ***** LPI lineCount FontSize 8 ************************************************************ ***** ***** STATISTICS ***** ******************** ***** Define the table to use in printing *************** table Field head(), width(.1) Field head(Stat), width(1), align(prn_left) Field head(), width(.1), align(prn_center) Field head(Score), width(1), align(prn_right) endtable ******************** ***** Print the header at the top of the section *************** FontStyle (PRN_BOLD + PRN_UNDERLINE) tableprint "","STATISTICS" FontStyle PRN_NORMAL ******************** ***** Print all the stats using our table format *************** if Size Modifier > -1 tableprint "", Size Modifier.Name, ":", "+" & Size Modifier.Score endif if Size Modifier < 0 tableprint "", Size Modifier.Name, ":", Size Modifier.Score endif movedown LPI/4 tableprint "", Will.Name, ":", Will.Score if Fright Check > 0 tableprint "", "-" & Fright Check.Name, ":", Fright Check.Score endif movedown LPI/4 if Perception > 0 tableprint "", Perception.Name, ":", Perception.Score endif if > 0 tableprint "", Perception.Name, ":", Perception.Score endif tableprint "", "-" & Vision.Name, ":", Vision.Score tableprint "", "-" & Hearing.Name, ":", Hearing.Score tableprint "", "-" & Taste/Smell.Name, ":", Taste/Smell.Score if Touch > 0 tableprint "", "-" & Touch.Name, ":", Touch.Score endif if High Jump > 0 movedown LPI/4 tableprint "", High Jump.Name, ":", High Jump.Score & " inch" tableprint "", Broad Jump.Name, ":", Broad Jump.Score & " ft." tableprint "", One-Handed Lift.Name, ":", One-Handed Lift.Score & " lbs." tableprint "", Two-Handed Lift.Name, ":", Two-Handed Lift.Score & " lbs." tableprint "", Shove.Name, ":", Shove.Score & " lbs." tableprint "", Carry on Back.Name, ":", Carry on Back.Score & " lbs." tableprint "", Shift Slightly.Name, ":", Shift Slightly.Score & " lbs." endif if TK ST > 0 movedown LPI/4 tableprint "", TK ST.Name, ":", TK ST.Score & " ST" tableprint "", TK No Enc.Name & ".", ":", TK No Enc.Score & " lbs./Move " & TKNoEncMove.Score tableprint "", TK Light Enc.Name & ".", ":", TK Light Enc.Score & " lbs./Move " & TKLtEncMove.Score tableprint "", TK Medium Enc.Name & ".", ":", TK Medium Enc.Score & " lbs./Move " & TKMdEncMove.Score tableprint "", TK Heavy Enc.Name & ".", ":", TK Heavy Enc.Score & " lbs./Move " & TKHvEncMove.Score tableprint "", TK X-Heavy Enc.Name & ".", ":", TK X-Heavy Enc.Score & " lbs./Move " & TKXHvEncMove.Score endif if Threshold > 0 movedown LPI/4 tableprint "", Threshold.Name, ":", Threshold.Score endif if Recovery Rate = 4 tableprint "","Recovery Rate", ":","1d+1" endif if Recovery Rate = 6 tableprint "","Recovery Rate", ":","2d-1" endif if Recovery Rate = 8 tableprint "","Recovery Rate", ":","2d+1" endif if Recovery Rate = 10 tableprint "","Recovery Rate", ":","3d" endif if Recovery Rate = 12 tableprint "","Recovery Rate", ":","3d+2" endif if Recovery Rate = 14 tableprint "","Recovery Rate", ":","4d" endif if Recovery Rate = 16 tableprint "","Recovery Rate", ":","4d+2" endif if Recovery Rate = 18 tableprint "","Recovery Rate", ":","5d" endif if Recovery Rate = 20 tableprint "","Recovery Rate", ":","6d-1" endif if Recovery Rate = 22 tableprint "","Recovery Rate", ":","6d+1" endif if Recovery Rate = 24 tableprint "","Recovery Rate", ":","7d-1" endif if Recovery Rate = 26 tableprint "","Recovery Rate", ":","7d+1" endif if Recovery Rate = 28 tableprint "","Recovery Rate", ":","8d" endif if Recovery Rate > 28 tableprint "","Recovery Rate", ":","8d*" tableprint "","",":","*Recovery Rate actually greater" endif if Money + Equipment Cost > 0 movedown LPI/4 tableprint "", Money.Name, ":", "$" & Money.Score tableprint "", Equipment Cost.Name, ":", "$" & Equipment Cost.Score tableprint "", Equipment Weight.Name, ":", Equipment Weight.Score & " lbs." endif * with Stats * for num = 1 to NumStats * if @calc(Stat(#num#).Display) then * tableprint "", Stat(#Num#).View, ":", Stat(#Num#).Score * endif * next ***** ***** END STATISTICS ***** ************************************************************ movedown #SectionSpacer# ************************************************************ ***** ***** POWERS/Equipment ***** ******************** ***** Define the format for them *************** BeginList Powers Field head(EQUIPMENT), include(DefaultView), position(.1), width(Column_Width - .1) EndList ******************** ***** Make them get printed *************** FontStyle prn_Normal DoList Powers ***** ***** END POWERS ***** ************************************************************ movedown #SectionSpacer# ************************************************************ ***** ***** ADVANTAGES ***** ******************** ***** Define the format for them *************** BeginList Ads Field head(Pts), include(Cost), position(.3), width(.25), align(prn_right) Field head(Advantage), include(DefaultView), position(.37), width(Column_Width - .4) EndList ******************** ***** Make them get printed *************** FontStyle prn_Bold + prn_Underline Printatleft "ADVANTAGES Alphabetically", curleftmargin + .1, %curline% Movedown LPI FontStyle prn_Normal DoList Ads ***** ***** END ADVANTAGES ***** ************************************************************ movedown #SectionSpacer# ************************************************************ ***** ***** DISADVANTAGES Alphabetically ***** ******************** ***** Define the format for them *************** BeginList Disads Field head(Pts), include(Cost), position(.3), width(.25), align(prn_right) Field head(Disadvantage), include(DefaultView), position(.37), width(Column_Width - .4) EndList ******************** ***** Make them get printed *************** FontStyle prn_Bold + prn_Underline Printatleft "DISADVANTAGES Alphabetically", curleftmargin + .1, %curline% Movedown LPI FontStyle prn_Normal DoList Disads ***** ***** END DISADVANTAGES ***** ************************************************************ movedown #SectionSpacer# ************************************************************ ***** ***** QUIRKS ***** ******************** ***** Define the format for them *************** BeginList Quirks Field head(Pts), include(Cost), position(.3), width(.25), align(prn_right) Field head(Quirk), include(DefaultView), position(.37), width(Column_Width - .4) EndList ******************** ***** Make them get printed *************** FontStyle prn_Bold + prn_Underline Printatleft "QUIRKS", curleftmargin + .1, %curline% Movedown LPI FontStyle prn_Normal DoList Quirks ***** ***** END QUIRKS ***** ************************************************************ movedown #SectionSpacer# if %curpage% = 1 if %curcol% = 2 NextCol endif endif ************************************************************* ****** ****** SKILLS Alphabetically ****** ColumnWidth (((Right_Margin - Left_Margin)-.2)/3) ******************** ***** Define the table to use in printing *************** set num = Column_Width - (1.1 + Margin) BEGINLIST Skills Field head(Skill), include(Name), position(.1), width(#num#), align(prn_left) Field head(Type), include(Stat), position(#num# + .5), width(.4), align(prn_right) Field head(Pts), include(Points), position(#num# + .75), width(.25), align(prn_right) Field head(Lvl), include(Level), position(#num# + 1), width(.25), align(prn_right) ENDLIST ******************** ***** Print the header at the top of the section *************** FontStyle prn_Bold + prn_Underline Printatleft "SKILLS Alphabetically", curleftmargin + .1, %curline% Movedown LPI FontStyle prn_Normal * ******************** * ***** Print all the skills using our table format * *************** DoList Skills ***** ***** END SKILLS Alphabetically ***** ************************************************************ movedown #SectionSpacer# *********************************************************** **** **** SKILLS **** if ((%curLine% + lpi*2) > Bottom_Margin) then nextcol movedown lpi endif ColumnWidth (((Right_Margin - Left_Margin)-.2)/3) ******************** ***** Define the table to use in printing *************** set num = Column_Width - (1.1 + Margin) BEGINLIST Skills by Cat Field head($Skill), include(Name), position(.1), width(#num#), align(prn_left) Field head(Type), include(Stat), position(#num# + .5), width(.4), align(prn_right) Field head(Pts), include(Points), position(#num# + .75), width(.25), align(prn_right) Field head(Lvl), include(Level), position(#num# + 1), width(.25), align(prn_right) ENDLIST ******************** ***** Print the header at the top of the section *************** FontStyle prn_Bold + prn_Underline Printatleft "SKILLS by Category", curleftmargin + .1, %curline% Movedown LPI FontStyle prn_Normal * ******************** * ***** Print all the skills using our table format * *************** DoList Skills ***** ***** END SKILLS by Cat ***** ************************************************************ ************************************************************ ***** ***** SPELLS Alphabetically ***** if NumSpells then movedown #SectionSpacer# if ((%curLine% + lpi*2) > Bottom_Margin) then nextcol endif ColumnWidth (((Right_Margin - Left_Margin)-.2)/3) ******************** ***** Define the table to use in printing *************** set num = Column_Width - (1.1 + Margin) BEGINLIST Spells Field head(Spells), include(Name), position(.1), width(#num#), align(prn_left) * Field head(Type), include(Stat), position(#num# + .5), width(.4), align(prn_right) Field head(Pts), include(Points), position(#num# + .75), width(.25), align(prn_right) Field head(Lvl), include(Level), position(#num# + 1), width(.25), align(prn_right) ENDLIST ******************** ***** Print the header at the top of the section *************** FontStyle prn_Bold + prn_Underline Printatleft "SPELLS Alphabetically", curleftmargin + .1, %curline% Movedown LPI FontStyle prn_Normal * ******************** * ***** Print all the Spells using our table format * *************** DoList Spells endif ***** ***** END Spells Alphabetically ***** ************************************************************ ************************************************************ ***** ***** SPELLS by College ***** if NumSpells then movedown #SectionSpacer# if ((%curLine% + lpi*2) > Bottom_Margin) then nextcol movedown lpi endif ColumnWidth (((Right_Margin - Left_Margin)-.2)/3) ******************** ***** Define the table to use in printing *************** set num = Column_Width - (1.1 + Margin) BEGINLIST Spells by Cat Field head($Spells), include(Name), position(.1), width(#num#), align(prn_left) * Field head(Type), include(Type), position(#num# + .5), width(.4), align(prn_right) Field head(Pts), include(Points), position(#num# + .75), width(.25), align(prn_right) Field head(Lvl), include(Level), position(#num# + 1), width(.25), align(prn_right) ENDLIST ******************** ***** Print the header at the top of the section *************** FontStyle prn_Bold + prn_Underline Printatleft "SPELLS by College", curleftmargin + .1, %curline% Movedown LPI FontStyle prn_Normal * ******************** * ***** Print all the Spells using our table format * *************** DoList Spells endif ***** ***** END Spells by College ***** ************************************************************ ************************************************************ ***** ***** SPELLS Full Description ***** ** * don't print if no spells ** if NumSpells then movedown #SectionSpacer# if %curcol% = 3 NextPage endif ColumnWidth (((Right_Margin - Left_Margin)-.2)/2) FontStyle prn_Bold + prn_Underline Printatleft "SPELLS Alphabetically with Descriptions", curleftmargin + .1, %curline% Movedown LPI FontStyle prn_Normal ******************** ***** Define the table to use in printing *************** var colLeft =(#Column_Width# + #curLeftMargin#)-(3*#Margin#) set colLeft =(#colLeft# - #curLeftMargin#) table Field width(Margin + .1), align(prn_left) Field width((#colLeft#/2)- .8), align(prn_left) Field width(1.2), align(prn_left) Field width((#colLeft#/2)- (.55 + Margin)), align(prn_right) endtable ******************** ***** Print all the spells using our table format and ***** wrapping of longer sections without a table *************** var spellTop = #%curline%# with Spells for num = 1 to NumSpells ********** ***** print the spell name info as a header ***** if ((%curLine% + lpi*10) >= Bottom_Margin) then set colLeft = curLeftMargin + column_width * line colLeft, spellTop , colLeft, %curLine% + Margin set spellTop = Top_Margin nextcol endif set colLeft =(Column_Width + curLeftMargin)-(3*Margin) FontStyle prn_Bold PrintAtLeft Spell(#Num#).name, curLeftMargin + .1, %curline% PrintAtRight "Sk: " & Spell(#Num#).Level, ColLeft-Margin, %curline% FontStyle prn_Normal PrintAtRight "Pts:" & Spell(#Num#).Points & " " & Spell(#Num#).Type, ColLeft-.5, %curline% Movedown lpi FontStyle prn_Bold PrintAtLeft " (" & Spell(#Num#).cat & ")", curLeftMargin + .1, %curline% FontStyle prn_Normal PrintAtRight "Page: " & Spell(#Num#).Page, ColLeft-Margin, %curline%, ColLeft - (curLeftMargin + (Margin*2)) Movedown lpi * FontStyle prn_Bold * PrintWrapAtLeft "(" & Spell(#Num#).cat & ")", curLeftMargin + Margin, %curLine%, ColLeft - (curLeftMargin + (Margin*2)) * FontStyle prn_Normal * PrintAtRight "Page: " & Spell(#Num#).Page, ColLeft-Margin, %curline% ***** print these items using the table format tableprint "", "Dur: " & Spell(#Num#).Duration, "Time: " & Spell(#Num#).Time, "Cost: " & Spell(#Num#).Cost ***** print these items as paragraphs, indented from the left PrintWrapAtLeft "Notes: " & Spell(#Num#).Notes, curLeftMargin + .1 + Margin, %curLine%, ColLeft - (.1 + curLeftMargin + (Margin*2)) movedown Margin next FontSize 8 LPI 10 if ((%curLine% + lpi*10) >= Bottom_Margin) then nextcol endif Movedown LPI set num1 = (curLeftMargin+colLeft-2)/2 table Field width(.2) Field width(.2), align(prn_Left) Field width(1.4), align(prn_Left) Field width(.2), align(prn_Left) Field width(1.5), align(prn_Left) endtable FontStyle prn_Bold + Prn_Underline PrintAtCenter "Ritual Modifiers", curLeftMargin + 1.7, %curline% Movedown 1.5 * lpi FontStyle prn_Normal PrintWrapAtLeft "Normally an elaborate Ritual (involving chanting, hand, & foot movements) must be performed when a spell is cast. Skilled wizards can dispense with some of the ritual. Use the following modifiers when not using the normal ritual.", curLeftMargin + .1 + Margin, %curLine%, 3.3 Movedown .5 * lpi tableprint "","+1", "Double casting time", "+2", "Quadruple casting time" tableprint "","-2", "Soft Speech", "-4", "No Speech" tableprint "","-2", "Motions with only 1 hand", "-4", "No hand motions" tableprint "","-2", "No foot motions", "-4", "Moving 1 Hex/Turn" tableprint "","-3", "Per 1/2 casting time*", "-3", "Per -1 Energy cost*" PrintWrapAtLeft "*Can reduce energy cost and halve casting time multiple times. Round casting time up at each halving.", curLeftMargin + .1 + Margin, %curLine%, 3.3 Movedown lpi Movedown lpi if ((%curLine% + lpi*10) >= Bottom_Margin) then nextcol endif FontStyle prn_Bold + Prn_Underline PrintAtCenter "Long-Distance Modifiers", curLeftMargin + 1.7, %curline% Movedown 1.5 * lpi FontStyle prn_Normal PrintWrapAtLeft "Use these skill modifers for 'Seek' spells, and for other specified spells which work over a long distance.", curLeftMargin + .1 + Margin, %curLine%, 3.3 Movedown .5 * lpi tableprint ""," 0", "Less than 100 yards", "-5", "Up to 50 miles" tableprint "","-1", "Up to 1/2 mile", "-6", "Up to 100 miles" tableprint "","-2", "Up to 1 mile", "-7", "Up to 300 miles" tableprint "","-3", "Up to 3 miles", "-8", "Up to 1,000 miles" tableprint "","-4", "Up to 10 miles", "-1", "Per additional 1,000 miles" PrintWrapAtLeft "Also, subtract 1 from effective skill for each 'known' item you choose to ignore in your search. For instance, you would need to ignore the water in your canteen when you cast Seek water in the desert.", curLeftMargin + .1 + Margin, %curLine%, 3.3 FontSize 8 LPI LineCount set spellTop = %curline% + Margin * line colLeft, spellTop, colLeft, Top_Margin * line curLeftMargin - (Margin), spellTop, colLeft, spellTop endif ***** ***** END SPELLS Full Description ***** ************************************************************ movedown #SectionSpacer# movedown #SectionSpacer# if ((%curLine% + lpi*10) >= Bottom_Margin) then nextcol endif ************************************************************ ***** ***** DESCRIPTION ***** if ((%curLine% + lpi*5) >= Bottom_Margin) then nextcol * if (#LS# > (curLeftMargin) Then * MoveTo PictureSpace.Bottom * endif endif FontStyle prn_Bold + prn_Underline Printatleft "DESCRIPTION", curleftmargin + .1, %curline% Movedown LPI FontStyle prn_Normal PrintWrapAtLeft Description, curLeftMargin + Margin, %curLine%, Column_Width - (.1 + (Margin*2)) ***** ***** END DESCRIPTION ***** ************************************************************ movedown #SectionSpacer# if ((%curLine% + lpi*10) >= Bottom_Margin) then nextcol endif ************************************************************ ***** ***** NOTES ***** if ((%curLine% + lpi*3) >= Bottom_Margin) then nextcol * if (#LS# > (curLeftMargin) Then * MoveTo PictureSpace.Bottom * endif endif FontStyle prn_Bold + prn_Underline Printatleft "NOTES", curleftmargin + .1, %curline% Movedown LPI FontStyle prn_Normal PrintWrapAtLeft Notes, curLeftMargin + Margin, %curLine%, Column_Width - (.1 + (Margin*2)) ***** ***** END NOTES ***** ************************************************************