manyset $vessel_class_data classinfos subclassinfos
set vc_codes {}
- set vc_code2abbrev(zz) vcunk
- load-icon vcunk
foreach {game code abbrev full} $classinfos {
if {![regexp {^[a-z][a-z]$} $code code]} { error "bad code" }
if {![regexp {^[a-z][a-z]$} $abbrev abbrev]} { error "bad abbrev" }
incr stackx
}
+ upvar #0 vc_code2abbrev($class) vcabb
+ if {![info exists vcabb]} {
+ set vcabb vc-$class
+ image create bitmap icon/$vcabb -data \
+ [exec pbmtext -builtin fixed $class | pnminvert | pnmcrop >t.pnm]
+ }
canvas-horiz-stack stackx -1 $imy $bind \
- image -anchor nw -image icon/$vc_code2abbrev($class)
+ image -anchor nw -image icon/$vcabb
if {[string length $subclass]} {
canvas-horiz-stack stackx 0 $y $bind \
set gameclass [errexpect-arrayget vi vesselClass]
upvar #0 vc_game2code($gameclass) class
- if {[info exists class]} {
- lappend codel $class
- } else {
- lappend codel zz
+ if {![info exists class]} {
+ set class "($gameclass)"
+ upvar #0 vc_code2abbrev($class) vcabb
+ set vcabb vc-$class
+ set data [exec pbmtext -builtin fixed " $gameclass " \
+ | pnminvert | pnmcrop | pbmtoxbm]
+ debug "INVENTED ICON $vcabb $data"
+ image create bitmap icon/$vcabb -data $data
+
+ global vc_code2full
+ set vc_code2full($class) "Type \"$gameclass\""
}
+ lappend codel $class
set gamesubclass [errexpect-arrayget vi vesselSubclass]
upvar #0 vsc_game2code($gamesubclass) subclass