cs3300330033 发表于 2017-10-27 10:43:43

关于原版追随者过夜的经验是1的问题

原版追随者过夜始终是1,在ERM里面哪里看得出来?
ZVSE
ERMS_ScriptDate=22.10(October).2004
_WARNING_#1=IMPORTANT! This file is not in a plain text format. NEVER use any editor except ERM_S for making any kind of changes!
ERMS_PoweredBy=ERM Scripter v. 2003.12.4.909
** HENCHMEN-ERM script 49

** By Arstahd
** Version: 1.17   updated October 22, 2004
** Thanks to Hermann the Weird for bug fixing and script maintenance

** Variables used:
** V variables:    v7206-v7217 v7181
** Z variables:    z1-z9
** W variables:    w117-w119
** Functions used: 7100-7109
** Timers used:    19 (copy of T19 used in script00)


** allows you to select one of your creatures to act as a Henchman, and fight with your army
** left click on player-color flag in upper right corner of hero screen to select a new henchman or check status
** right click on player-color flag in upper right corner of hero screen to view help page

** henchmen gain status for each battle fought and gain levels (indicated by increased stack quantity)
** henchmen have a status bonus based on hero level and current day
** lower level/un-upgraded creatures level up faster than higher level/upgraded creatures
** dead henchmen can be resurrected in a town for a fee based on creature cost and level
** AI heroes have a (good) chance of having a henchman of random level (based on hero level)

** henchmen gain +1 attack, +1 defense, +1 speed
** henchmen gain an additional +1 speed for every 10 levels
** henchmen gain an additional +1 attack and +1 defense for every 3 levels
** henchmen gain +2-5 to base damage
** henchmen gain +10 to base health

** henchmen have a "dummy spell" (disguise) applied to color their quantity tag to help separate them from normal creatures
** henchmen will die after one of the stack is lost, they may offer one last retaliation before doing so




!#VRv7206:S0;                                       
!#UN:P49/?v7181;                                    

** Timer routines
!?TM19&v7181=1;                                    
!!DO7105/0/155/1&v7206=0:P;                        


** start of hero screen mouse trigger **
!?CM2&v7181=1;                                       

!!CM:I?y-3 F?y-4 S?y-5;                              
!!IF&y-3=141/y-4=512:Q2/-1/-1/1/z149000;

!!FU|y-3<>141/y-4<>0/y-5<>12:E;                     

!!CM:H?y-1/?y-2;                                    
!!IF&y-1>-1:Wy-1;                                    

!!FU7106&w118>-1:Py-1;                              
!!FU7102&w118<0:P;                                 
!!UN:R3/-1;                                          

** end of hero screen mouse trigger **

** start of object trigger - towns **
!?OB98&v7181=1;
!!OW:I-1/?y-2;                                       
!!CA998&y-2=0:O?y-4;                                 
!!HE-1&y-2=0:N?y-1 O?y-3;                           
!!IF&y-2=0/y-1>-1:Wy-1;                              
!!FU7108&y-2=0/w118>-1/w119=0/y-3=y-4:Py-1;         

*!FU7109&y-2=0/w118=-1/y-3<>y-4:P;                  
** end of object trigger - towns **

** start of object trigger - banks **
!?OB16&v7181=1;                                       
!!FU7109:P;                                          
** end of object trigger - banks **

** start of object trigger - monsters **
!?OB54&v7181=1;                                       
!!FU7109:P;                                          
** end of object trigger - monsters **

!?FU7109;

!!OW:I-1/?y-2;                                       
!!HE-1&y-2=0:N?y-1 O?y-3;                           
!!IF&y-2=0/y-1>-1:Wy-1;                              

!!IF&y-2=0/w118=-1:Q2/10/y-3/2/z149001;

!!FU7102&2/y-2=0/w118=-1:P;                        
!!VRw118&-2/y-2=0/w118=-1:S-2;                     
** end of function **


** start of battlefield trigger **
!?BF&v7181=1;                                       

!!VRv7207:C-1/-1/-1/-1/-1/-1;                        
!!VRy-1:S-2;                                       

!!BU:E2/?y-7;                                       

!!BA:H0/?y-1;                                       
!!HEy-1&y-1>-1:O?y-3;                              
!!OW:Iy-3/?y-6;                                    
!!FU7103&y-6=1/y-1>-1:Py-1;                        
!!IF&y-1>-1:Wy-1;                                    
!!VRy-8&y-7<21:S20;                                 
!!VRy-8&y-7>20:S25;                                 
!!BU&w118>-1/w119=1/y-1>-1:Sw118/1/y-8/0/-1/0;      
!!BU&w118>-1/w119=1/y-1>-1:Ey-8/?v7207;            
!!FU7101&w118>-1/w119=1/y-1>-1/v7207>-1:Pv7207/0/y-1;

!!VRy-2:S-2;                                       
!!BA:H1/?y-2;                                       
!!HEy-2&y-2>-1:O?y-3;                              
!!OW:Iy-3/?y-6;                                    
!!FU7103&y-6=1/y-2>-1:Py-2;                        
!!IF&y-2>-1:Wy-2;                                    
!!BU&w118>-1/w119=1/y-2>-1:Sw118/1/30/1/-1/0;      
!!BU&w118>-1/w119=1/y-2>-1:E30/?v7208;               
!!FU7101&w118>-1/w119=1/y-2>-1/v7208>-1:Pv7208/1/y-2;
** end of battlefield trigger **


** pre-action trigger
!?BG&v7181=1;                                       


!!BMv7207&v7207>-1:N?v7211 H?v7216;                  
!!BMv7208&v7208>-1:N?v7212 H?v7217;                  
!!BG&v7207=v7210/v7211=0:A3;                        
!!BG&v7208=v7210/v7212=0:A3;                        


** end of pre-action trigger

** post-action trigger
!?BG1&v7181=1;                                       

!!BG:N?v7210;                                       

!!BMv7207&v7207>-1:N?y-2 T?y-3;                     
!!BMv7207&v7207>-1/y-2<v7211:K100000;               
!!FU7107&v7207>-1/y-2<v7211:P0/0;                  
!!BMv7207&v7207>-1/y-2>v7211/y-3<>159:Nv7213 L0;   
!!FU7107&v7207>-1/y-2>v7211/y-3<>159:P0/1;         
!!BU&v7207>-1/y-2<v7211/y-3<>159:R;                  

!!BMv7208&v7208>-1:N?y-2 T?y-3;                     
!!BMv7208&v7208>-1/y-2<v7212:K100000;               
!!FU7107&v7208>-1/y-2<v7212:P1/0;                  
!!BMv7208&v7208>-1/y-2>v7212/y-3<>159:Nv7214 L0;   
!!FU7107&v7208>-1/y-2<v7212/y-3<>159:P1/1;         
!!BU&v7208>-1/y-2<v7212/y-3<>159:R;                  
** end of post-action trigger



** function to get monster names
!?FU7100;             x1= Z index
!!HE-1:C0/x16/?y1/?y2;                              
!!UN&x16=0/y1>-1:N3/2/y1/0;                        
!!UN&x16=1/y1>-1:N3/3/y1/0;                        
!!UN&x16=2/y1>-1:N3/4/y1/0;                        
!!UN&x16=3/y1>-1:N3/5/y1/0;                        
!!UN&x16=4/y1>-1:N3/6/y1/0;                        
!!UN&x16=5/y1>-1:N3/7/y1/0;                        
!!UN&x16=6/y1>-1:N3/8/y1/0;                        

** end of function


** function to give stat increases    x1=stackx2=attacker/defenderx3=hero number
!?FU7101;

!!BMx1:T?y6;                                       
!!FU7104&y6>-1:Py6;                                 
!!VRy7&y6>-1:Sv7215;                                 
!!IF&y6>-1:Wx3;                                    
!!HEx3:E?y1/?y2/1;                                 
!!VRy10:Sy2 -1 *10 +w117 +c;                        
!!VRv7213&x2=0/y6>-1:Sy10 :y7 +1;                  
!!VRv7214&x2=1/y6>-1:Sy10 :y7 +1;                  
!!VRy8&x2=0/y6>-1:Sv7213;                           
!!VRy8&x2=1/y6>-1:Sv7214;                           

!!VRy4&y6>-1:Sy8 :10 +1;                           
!!BMx1&y6>-1:Sdy4;                                 

!!BMx1&y6>-1:U1/d2;                                 
!!BMx1&y6>-1:U2/d5;                                 

!!VRy4&y6>-1:Sy8 :3 +1;                              
!!BMx1&y6>-1:Ady4 Ddy4;                              

!!BMx1&y6>-1:H?y4;                                 
!!VRy5&y6>-1:Sy4 +10 *y8;                           
!!BMx1&y6>-1:Hy5;                                    
!!BMx1&y6>-1:Ny8;                                    

!!BMx1|y6=63/y6=154:By8;                           

!!BMx1&y6>-1:M4/100/1;                              

!!VRw117&y6>-1:+6 T4;                              


*tactics speed boost if enabled*

!!UN:P218/?y1;                                       
!!FU&y1<>1:E;                                       
!!VRy3:S0;                                          
!!VRy4:S0;                                          
!!BH0:N?y1;                                          
!!BH1:N?y2;                                          
!!HEy1&y1>=0:S19/?y3;                              
!!HEy2&y2>=0:S19/?y4;                              
!!FU&y3=0/y4=0:E;                                    
!!FU&y3=y4:E;                                       
!!FU&y3<y4/x2=0:E;                                 
!!FU&y3>y4/x2=1:E;                                 
!!VRy5&y3>y4/x2=0:S0 +y3 -y4;                        
!!VRy5&y3<y4/x2=1:S0 +y4 -y3;                        
!!BMx1&y6>-1:Sdy5;                                 

** end of function


** function to pick henchman
!?FU7102;             x1=

!!VRz1:Sz149002;
!!VRz2:S^^;
!!VRz3:S^^;
!!VRz4:S^^;
!!VRz5:S^^;
!!VRz6:S^^;
!!VRz7:S^^;
!!VRz8:S^^;
!!VRz9:Sz149003;
!!VRz10:Sz149004;
!!DO7100/0/6/1:P2;
!!IF&1000:G1/1/256/1/2/3/4/5/6/7/8/9/10;               
!!VRy2&v1=1:S0;
!!VRy2&v1=2:S1;
!!VRy2&v1=4:S2;
!!VRy2&v1=8:S3;
!!VRy2&v1=16:S4;
!!VRy2&v1=32:S5;
!!VRy2&v1=64:S6;
!!HE-1&v1<256:N?y3;                                 
!!HE-1&v1<128:C0/y2/?y1/?y-2;                        
!!EX-1/y2:R?y-3/?y-4;                              
!!HE-1&v1<128/y-2=1/y-3=156:A156;                  
!!HE-1&v1<128:C0/y2/?y1/d-1;                        
!!IF&v1<256/y3>-1:Wy3;                              
!!VRw117&v1<256:S0;                                 
!!VRw118&v1<128:Sy1;                                 
!!VRw118&v1=128:S-2;                                 
!!VRw119&v1<128:S1;                                 

** end of function


** function to pick henchman for AI
!?FU7103;             x1= hero #x16= slot #

!!IF:Wx1;                                          
!!VRy1:S0 T7;                                       
!!HEx1&y1<7:C0/y1/?y2/?y3;                           
!!VRy2&y1>6:S0 T199;                                 
!!VRy2&y1>6/y2>=132/y2<=135:S0 T173;               
!!VRy2&y1>6/y2>=150/y2<=158:S0 T173;               
!!VRy2&y1>6/y2>=145/y2<=149:S0 T131;               
!!VRy2&y1>6/y2>=160/y2<=163:S0 T131;               
!!VRy2&y1>6/y2=122:S192;                           
!!VRy2&y1>6/y2=124:S193;                           
!!VRy2&y1>6/y2=126:S194;                           
!!VRy2&y1>6/y2=128:S195;                           
!!VRy2&y1>6/y2>173:S-1;                              

!!HEx1&y2>-1:E?y6/?y7/1;                           
!!VRy4&y2>-1:S25 T10 *y7;                           
!!VRw118&y2>-1:Sy2;                                 
!!VRw117&y2>-1/w118>-1/y4>w117:Sy4;                  
!!VRw119&y2>-1:S1;                                 
!!VRw119&y2=-1:S0;                                 
** end of function

** function to get creature level    x1=type
!?FU7104;

!!MA:Lx1/?y7;                                       

!!VRy8:S0;                                          
!!VRy8&x1<112:Sx1 %2;                              

!!VRv7215&y7=0/y8=0:S20;                           
!!VRv7215&y7=1/y8=0:S25;                           
!!VRv7215&y7=2/y8=0:S35;                           
!!VRv7215&y7=3/y8=0:S50;                           
!!VRv7215&y7=4/y8=0:S75;                           
!!VRv7215&y7=5/y8=0:S115;                           
!!VRv7215&y7=6/y8=0:S180;                           

!!VRv7215&y7=0/y8=1:S22;                           
!!VRv7215&y7=1/y8=1:S28;                           
!!VRv7215&y7=2/y8=1:S40;                           
!!VRv7215&y7=3/y8=1:S58;                           
!!VRv7215&y7=4/y8=1:S88;                           
!!VRv7215&y7=5/y8=1:S136;                           
!!VRv7215&y7=6/y8=1:S250;                           


!!VRv7215&x1=112:S35;                              
!!VRv7215&x1=127:S40;                              
!!VRv7215&x1=113:S50;                              
!!VRv7215&x1=121:S58;                              
!!VRv7215&x1=119:S22;                              
!!VRv7215&x1=121:S136;                              
!!VRv7215&x1=123:S40;                              
!!VRv7215&x1=129:S58;                              
!!VRv7215&x1=131:S225;                              

!!VRv7215&x1=132:S550;                              
!!VRv7215&x1=133:S450;                              
!!VRv7215&x1=134:S350;                              
!!VRv7215&x1=135:S400;                              
!!VRv7215&x1>=150/x1<=158:S400;                     

!!VRv7215&x1=63:S80;                                 
*!VRv7215&x1=159:S25;                              
!!VRv7215&x1=172:S136;                              
!!VRv7215&x1=196:S500;                              

** end of function

** function to initialize hero variable w118
!?FU7105;
!!IF:Wx16;                                          
!!VRw118:S-1;                                       
!!VRv7206:S1;                                       
** end of function

** function to display henchman    x1 = hero number
!?FU7106;
!!IF&x1>-1:Wx1;                                    
!!VRz1:S^^;
!!VRz1&w119=0:Sz149005;
!!FU7104&w118>-1:Pw118;                              
!!HEx1:E?y1/?y2/1;                                 
!!VRy2:-1 *10 +c -1;                                 
!!VRy11:Sw117 +y2;                                 
!!VRy3:Sy11 :v7215 +1;                              
!!VRy4:Sy11 %v7215 -v7215 *-1;                     


!!MA&w118>-1:Aw118/?y1;                              
!!VRy5:Sy3 :3 +1 +y1;                              
!!MA&w118>-1:Dw118/?y1;                              
!!VRy6:Sy3 :3 +1 +y1;                              
!!MA&w118>-1:Pw118/?y1;                              
!!VRy7:Sy1 +10 *y3;                                 
!!MA&w118>-1:Mw118/?y1;                              
!!VRy8:Sy1 +2 *y3;                                 
!!MA&w118>-1:Ew118/?y1;                              
!!VRy9:Sy1 +5 *y3;                                 
!!MA&w118>-1:Sw118/?y1;                              
!!VRy10:Sy3 :10 +1 +y1;                              


!!IF:Q2/21/w118/2/z149006;
!!FU7102&2:P;                                       
** end of function

** function to handle dead/alive status
!?FU7107;               x1=attacker/defender    x2= dead/alive
!!BA&x1=0:H0/?y1;                                    
!!BA&x1=1:H1/?y1;                                    
!!IF:Wy1;                                          
!!VRw119:Sx2;                                       
** end of function

** function to resurrect dead henchman
!?FU7108;
!!IF&x1>-1:Wx1;                                    
!!FU7104&w118>-1:Pw118;                              
!!HEx1:E?y6/?y7/1;                                 
!!IF&x1>-1:Wx1;                                    
!!VRy10:Sy7 -1 *10 +w117 +c;                        
!!VRy3:Sy10 :v7215 +1;                              
!!MA:Cw118/6/?y8;                                    
!!VRy4:Sy8 *y3 :5;                                 
!!IF:Q2/21/w118/2/z149007;
!!OW:R-1/6/?y5;                                    
!!VRy8&2/y5>=y4:Sy5 -y4;                           
!!OW&2/y5>=y4:R-1/6/y8;                              
!!VRw119&2/y5>=y4:S1;                              
!!IF&2/y5<y4:M1/z149008;
** end of function


页: [1]
查看完整版本: 关于原版追随者过夜的经验是1的问题

捐赠