edit: Improve tech, research, edu, happiness change reporting

Print "Technology" instead of "Tech".  Print "FOO of CNAME (#CNUM)"
instead of just "FOO".  Print "unchanged" instead of "changed from X
to X" on no-op.

Send a bulletin to the unit owner and report news on change.

Signed-off-by: Markus Armbruster <armbru@pond.sub.org>
This commit is contained in:
Markus Armbruster 2013-02-03 18:09:28 +01:00
parent e6c1476c2f
commit 93aa604b67
3 changed files with 45 additions and 35 deletions

View file

@ -624,13 +624,25 @@ edit_sect(struct sctstr *sect, char *key, char *p)
return RET_OK;
}
static void
edit_level(struct natstr *np, int lvl, char *name, char *p)
{
float new = (float)atof(p);
new = MAX(0.0, new);
divine_nat_change(np, name,
new != np->nat_level[lvl],
(new > np->nat_level[lvl]) - (new < np->nat_level[lvl]),
"from %.2f to %.2f", np->nat_level[lvl], new);
np->nat_level[lvl] = new;
}
static int
edit_nat(struct natstr *np, char *key, char *p)
{
coord newx, newy;
natid nat = np->nat_cnum;
int arg = atoi(p);
float farg = (float)atof(p);
switch (*key) {
case 'n':
@ -703,28 +715,16 @@ edit_nat(struct natstr *np, char *key, char *p)
np->nat_money = arg;
break;
case 'T':
farg = MAX(0.0, farg);
pr("Tech changed from %.2f to %.2f.\n",
np->nat_level[NAT_TLEV], farg);
np->nat_level[NAT_TLEV] = farg;
edit_level(np, NAT_TLEV, "Technology", p);
break;
case 'R':
farg = MAX(0.0, farg);
pr("Research changed from %.2f to %.2f.\n",
np->nat_level[NAT_RLEV], farg);
np->nat_level[NAT_RLEV] = farg;
edit_level(np, NAT_RLEV, "Research", p);
break;
case 'E':
farg = MAX(0.0, farg);
pr("Education changed from %.2f to %.2f.\n",
np->nat_level[NAT_ELEV], farg);
np->nat_level[NAT_ELEV] = farg;
edit_level(np, NAT_ELEV, "Education", p);
break;
case 'H':
farg = MAX(0.0, farg);
pr("Happiness changed from %.2f to %.2f.\n",
np->nat_level[NAT_HLEV], farg);
np->nat_level[NAT_HLEV] = farg;
edit_level(np, NAT_HLEV, "Happiness", p);
break;
default:
pr("huh? (%s)\n", key);

View file

@ -365,9 +365,9 @@ actor action victim times duration time
0 42 1 39 0 0
0 44 3 1 0 0
0 44 1 32 0 0
0 43 2 5 0 0
0 43 2 9 0 0
0 44 3 19 0 0
0 43 1 67 0 0
0 43 1 71 0 0
0 42 1 4 0 0
1 45 0 1 0 0
0 43 3 27 0 0
@ -387,7 +387,7 @@ cnum stat flags cname passwd ip hostname userid xcap ycap xorg yorg update tgms
2 active (flash beep coastwatch sonar techlists) "2" "0123456789012345678" "" "" "" 2 0 2 0 0 1 0 255 0 0 0 0 0 0 0 0 100.000 100.000 100.000 100.000 neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () ()
3 active (flash beep coastwatch sonar techlists) "drei" "3" "" "" "" 0 0 0 0 0 1 0 255 640 0 0 0 0 0 0 0 0.00000 0.00000 0.00000 0.00000 neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () ()
4 deity (flash beep coastwatch sonar techlists) "4" "4" "" "" "" 0 0 0 0 0 0 0 255 640 0 0 0 0 0 0 0 0.00000 0.00000 0.00000 0.00000 neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () ()
5 deity (flash beep coastwatch sonar techlists) "5" "5" "" "" "" 0 0 0 0 0 0 0 255 640 0 0 0 0 0 0 0 1.00000 0.00000 0.00000 0.00000 neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () ()
5 deity (flash beep coastwatch sonar techlists) "5" "5" "" "" "" 0 0 0 0 0 1 0 255 640 0 0 0 0 0 0 0 1.00000 0.00000 0.00000 0.00000 neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () ()
6 unused (flash beep coastwatch sonar techlists) "6" "6" "" "" "" 0 0 0 0 0 0 0 255 0 0 0 0 0 0 0 0 0.00000 0.00000 0.00000 0.00000 neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () ()
7 unused (flash beep coastwatch sonar techlists) "7" "7" "" "" "" 0 0 0 0 0 65535 0 255 0 0 0 0 0 0 0 0 0.00000 0.00000 0.00000 0.00000 neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral neutral 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () ()
8 unused () "" "" "" "" "" 0 0 0 0 0 0 0 255 0 0 0 0 0 0 0 0 0.00000 0.00000 0.00000 0.00000 at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war at-war 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () ()

View file

@ -1510,51 +1510,51 @@
Play#0 output Play#0 6 0 640
Play#0 input edit c 1 T 3.14
Play#0 command edit
Play#0 output Play#0 1 Tech changed from 0.00 to 3.14.
Play#0 output Play#0 1 Technology of 1 (#1) changed from 0.00 to 3.14
Play#0 output Play#0 6 0 640
Play#0 input edit c 2 T 100
Play#0 command edit
Play#0 output Play#0 1 Tech changed from 0.00 to 100.00.
Play#0 output Play#0 1 Technology of 2 (#2) changed from 0.00 to 100.00
Play#0 output Play#0 6 0 640
Play#0 input edit c 3 T -1
Play#0 command edit
Play#0 output Play#0 1 Tech changed from 0.00 to 0.00.
Play#0 output Play#0 1 Technology of 3 (#3) unchanged
Play#0 output Play#0 6 0 640
Play#0 input edit c 1 R 3.14
Play#0 command edit
Play#0 output Play#0 1 Research changed from 0.00 to 3.14.
Play#0 output Play#0 1 Research of 1 (#1) changed from 0.00 to 3.14
Play#0 output Play#0 6 0 640
Play#0 input edit c 2 R 100
Play#0 command edit
Play#0 output Play#0 1 Research changed from 0.00 to 100.00.
Play#0 output Play#0 1 Research of 2 (#2) changed from 0.00 to 100.00
Play#0 output Play#0 6 0 640
Play#0 input edit c 3 R -1
Play#0 command edit
Play#0 output Play#0 1 Research changed from 0.00 to 0.00.
Play#0 output Play#0 1 Research of 3 (#3) unchanged
Play#0 output Play#0 6 0 640
Play#0 input edit c 1 E 3.14
Play#0 command edit
Play#0 output Play#0 1 Education changed from 0.00 to 3.14.
Play#0 output Play#0 1 Education of 1 (#1) changed from 0.00 to 3.14
Play#0 output Play#0 6 0 640
Play#0 input edit c 2 E 100
Play#0 command edit
Play#0 output Play#0 1 Education changed from 0.00 to 100.00.
Play#0 output Play#0 1 Education of 2 (#2) changed from 0.00 to 100.00
Play#0 output Play#0 6 0 640
Play#0 input edit c 3 E -1
Play#0 command edit
Play#0 output Play#0 1 Education changed from 0.00 to 0.00.
Play#0 output Play#0 1 Education of 3 (#3) unchanged
Play#0 output Play#0 6 0 640
Play#0 input edit c 1 H 3.14
Play#0 command edit
Play#0 output Play#0 1 Happiness changed from 0.00 to 3.14.
Play#0 output Play#0 1 Happiness of 1 (#1) changed from 0.00 to 3.14
Play#0 output Play#0 6 0 640
Play#0 input edit c 2 H 100
Play#0 command edit
Play#0 output Play#0 1 Happiness changed from 0.00 to 100.00.
Play#0 output Play#0 1 Happiness of 2 (#2) changed from 0.00 to 100.00
Play#0 output Play#0 6 0 640
Play#0 input edit c 3 H -1
Play#0 command edit
Play#0 output Play#0 1 Happiness changed from 0.00 to 0.00.
Play#0 output Play#0 1 Happiness of 3 (#3) unchanged
Play#0 output Play#0 6 0 640
Play#0 input edit c 1 n POGO
Play#0 command edit
@ -1621,7 +1621,7 @@
Play#0 output Play#0 1 BTU's changed from 0 to 640
Play#0 output Play#0 4 %c xxxxx -- thing value :
Play#0 input T 1
Play#0 output Play#0 1 Tech changed from 0.00 to 1.00.
Play#0 output Play#0 1 Technology of 5 (#5) changed from 0.00 to 1.00
Play#0 output Play#0 4 %c xxxxx -- thing value :
Play#0 input
Play#0 output Play#0 1 Country #: 5
@ -1632,7 +1632,7 @@
Play#0 output Play#0 1 Technology <T>: 1.00 Research <R>: 0.00
Play#0 output Play#0 1 Education <E>: 0.00 Happiness <H>: 0.00
Play#0 output Play#0 1 Money <M>: $ 0
Play#0 output Play#0 1 Telegrams <t>: 0
Play#0 output Play#0 1 Telegrams <t>: 1
Play#0 output Play#0 6 0 640
Play#0 input read 0
Play#0 command read
@ -1752,6 +1752,10 @@
Play#0 output Play#0 1 POGO gave you 9997 civilians in 6,6
Play#0 output Play#0 1 POGO stole 1 civilians from 8,6
Play#0 output Play#0 1 Money changed from 0 to -2147483648 by an act of POGO
Play#0 output Play#0 1 Technology changed from 0.00 to 3.14 by an act of POGO!
Play#0 output Play#0 1 Research changed from 0.00 to 3.14 by an act of POGO!
Play#0 output Play#0 1 Education changed from 0.00 to 3.14 by an act of POGO!
Play#0 output Play#0 1 Happiness changed from 0.00 to 3.14 by an act of POGO!
Play#0 output Play#0 6 0 640
Play#0 input read 2
Play#0 command read
@ -1777,6 +1781,10 @@
Play#0 output Play#0 1 Retreat conditions of cs cargo ship (#2) changed by an act of POGO: group set
Play#0 output Play#0 1 Retreat condition of sup supply #2 changed by an act of POGO: group set
Play#0 output Play#0 1 Flags of f1 Sopwith Camel #2 changed by an act of POGO: airburst set
Play#0 output Play#0 1 Technology changed from 0.00 to 100.00 by an act of POGO!
Play#0 output Play#0 1 Research changed from 0.00 to 100.00 by an act of POGO!
Play#0 output Play#0 1 Education changed from 0.00 to 100.00 by an act of POGO!
Play#0 output Play#0 1 Happiness changed from 0.00 to 100.00 by an act of POGO!
Play#0 output Play#0 6 0 640
Play#0 input read 3
Play#0 command read
@ -1871,7 +1879,9 @@
Play#0 output Play#0 6 0 640
Play#0 input read 5
Play#0 command read
Play#0 output Play#0 1 No telegrams for 5 at the moment...
Play#0 output Play#0 1
Play#0 output Play#0 1 > BULLETIN from POGO, (#0) dated Thu Jan 1 00:00:00 1970
Play#0 output Play#0 1 Technology changed from 0.00 to 1.00 by an act of POGO!
Play#0 output Play#0 6 0 640
Play#0 input read 98
Play#0 command read