OSDN Git Service

サモンやクリエイトのボタンズレと、サモンバグ改善
[awarsiii/AwarsIV.git] / Awars III / FieldScene.m
index c6c7e9e..7741e31 100755 (executable)
@@ -4726,9 +4726,6 @@ ahhh:{}
         U = UTop;
         
         
-        U = UTop;
-        [self addSummonStatus];
-        
         U = CSLU;
         
         if(U->team == 0){
@@ -4752,10 +4749,15 @@ ahhh:{}
             unitNum[possionX][possionY] = U->C.S->list[crCSL]-1;
             unitTeam[possionX][possionY] = 0;
             
+            
+            
             U->C.S = sTop;
+            
+            U = UTop;
+            [self addSummonStatus];
             unitColorInitFlag = true;
-        }
-        if(U->team == 2){
+
+        }else if(U->team == 2){
             
             SKILL *sTop = U->C.S;
             
@@ -4777,6 +4779,10 @@ ahhh:{}
             
             U->C.S = sTop;
             unitColorInitFlag = true;
+            
+            U = UTop;
+            [self addSummonStatus];
+            unitColorInitFlag = true;
         }
     
         summonRdyFlag = false;
@@ -6142,6 +6148,8 @@ ahhh:{}
     windowPoint.y = [mapWindow frame].origin.y;
     [createPanel setFrameOrigin:windowPoint];
     
+    wtAttackedFlag = true;
+    
     [self initBCreateList];
     [createPanel makeKeyAndOrderFront:nil];
 }
@@ -6155,6 +6163,8 @@ ahhh:{}
     windowPoint.y = [mapWindow frame].origin.y;
     [summonPanel setFrameOrigin:windowPoint];
     
+    wtAttackedFlag = true;
+    
     [self initCSummonList];
     [summonPanel makeKeyAndOrderFront:nil];
 }
@@ -6271,16 +6281,19 @@ ahhh:{}
 }
 -(IBAction)pushCancelCAL:(id)sender{
     attackFlag = false;
+    wtAttackedFlag = false;
     [atkPanel close];
 }
 
 -(IBAction)pushCancelBCL:(id)sender{
     createFlag = false;
+    wtAttackedFlag = false;
     [createPanel close];
 }
 
 -(IBAction)pushCancelCSL:(id)sender{
     summonFlag = false;
+    wtAttackedFlag = false;
     [summonPanel close];
 }
 
@@ -6421,9 +6434,12 @@ ahhh:{}
     U->next = NULL;
     if(omgCnt == 0) U = UTop;
     
+    U->chipNumber = unitNum[possionX][possionY];
+    U->chipNumberL = -1;
     
     U->x = possionX;
     U->y = possionY;
+    U->number = registerNum;
 
     U->C = CSLUC;
     if(unitTeam[CSLU->x][CSLU->y] == 0 || unitTeam[CSLU->x][CSLU->y] == 1){
@@ -12475,31 +12491,63 @@ SKIP1:
             [attackBtn setEnabled:NO];
         }
         
-        if(!wtMovedFlag && wtAttackedFlag){
-            [moveBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
-            [[commandPanel contentView] addSubview:moveBtn];
-            [moveBtn setTransparent: NO];
-            [moveBtn setEnabled: YES];
-        }
-        
+        if(!wtAttackedFlag){
         plusBtnValue -= stanbyBtn.frame.size.height + 2;
         [stanbyBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
         [[commandPanel contentView] addSubview:stanbyBtn];
         [stanbyBtn setTransparent: NO];
         [stanbyBtn setEnabled: YES];
+        }
         
-        
+        if(!wtAttackedFlag){
         [createBtn setTransparent: NO];
         [createBtn setEnabled: YES];
         plusBtnValue -= createBtn.frame.size.height + 2;
         [createBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
         [[commandPanel contentView] addSubview:createBtn];
+        }else{
+            plusBtnValue -= createBtn.frame.size.height + 2;
+            plusBtnValue2 -= createBtn.frame.size.height + 2;
+            plusBtnValue3 -= createBtn.frame.size.height + 2;
+            [createBtn setTransparent: YES];
+            [createBtn setEnabled: NO];
+        }
         
+        if(!wtAttackedFlag){
         [summonBtn setTransparent: NO];
         [summonBtn setEnabled: YES];
         plusBtnValue -= summonBtn.frame.size.height + 2;
         [summonBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
         [[commandPanel contentView] addSubview:summonBtn];
+        }else{
+            plusBtnValue -= summonBtn.frame.size.height + 2;
+            plusBtnValue2 -= summonBtn.frame.size.height + 2;
+            plusBtnValue3 -= summonBtn.frame.size.height + 2;
+            [summonBtn setTransparent: YES];
+            [summonBtn setEnabled: NO];
+        }
+        
+        if(!wtMovedFlag && wtAttackedFlag){
+            [moveBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
+            [[commandPanel contentView] addSubview:moveBtn];
+            [moveBtn setTransparent: NO];
+            [moveBtn setEnabled: YES];
+            plusBtnValue -= stanbyBtn.frame.size.height + 2;
+            [stanbyBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
+            [[commandPanel contentView] addSubview:stanbyBtn];
+            [stanbyBtn setTransparent: NO];
+            [stanbyBtn setEnabled: YES];
+        }
+        
+        if(wtMovedFlag && wtAttackedFlag){
+            plusBtnValue -= stanbyBtn.frame.size.height + 2;
+            [stanbyBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
+            [[commandPanel contentView] addSubview:stanbyBtn];
+            [stanbyBtn setTransparent: NO];
+            [stanbyBtn setEnabled: YES];
+        }
+        
+        
         
         plusBtnValue -= statusBtn.frame.size.height + 2;
         [statusBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
@@ -12545,26 +12593,48 @@ SKIP1:
             [attackBtn setTransparent: YES];
             [attackBtn setEnabled:NO];
         }
+
+        if(!wtAttackedFlag){
+            plusBtnValue -= stanbyBtn.frame.size.height + 2;
+            [stanbyBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
+            [[commandPanel contentView] addSubview:stanbyBtn];
+            [stanbyBtn setTransparent: NO];
+            [stanbyBtn setEnabled: YES];
+        }
+        
+        if(!wtAttackedFlag){
+        [createBtn setTransparent: NO];
+        [createBtn setEnabled: YES];
+        plusBtnValue -= createBtn.frame.size.height + 2;
+        [createBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
+        [[commandPanel contentView] addSubview:createBtn];
+        }else{
+            plusBtnValue -= createBtn.frame.size.height + 2;
+            plusBtnValue2 -= createBtn.frame.size.height + 2;
+            plusBtnValue3 -= createBtn.frame.size.height + 2;
+            [createBtn setTransparent: YES];
+            [createBtn setEnabled:NO];
+        }
         
         if(!wtMovedFlag && wtAttackedFlag){
             [moveBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
             [[commandPanel contentView] addSubview:moveBtn];
             [moveBtn setTransparent: NO];
             [moveBtn setEnabled: YES];
+            plusBtnValue -= stanbyBtn.frame.size.height + 2;
+            [stanbyBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
+            [[commandPanel contentView] addSubview:stanbyBtn];
+            [stanbyBtn setTransparent: NO];
+            [stanbyBtn setEnabled: YES];
         }
         
-        plusBtnValue -= stanbyBtn.frame.size.height + 2;
-        [stanbyBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
-        [[commandPanel contentView] addSubview:stanbyBtn];
-        [stanbyBtn setTransparent: NO];
-        [stanbyBtn setEnabled: YES];
-        
-        
-        [createBtn setTransparent: NO];
-        [createBtn setEnabled: YES];
-        plusBtnValue -= createBtn.frame.size.height + 2;
-        [createBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
-        [[commandPanel contentView] addSubview:createBtn];
+        if(wtMovedFlag && wtAttackedFlag){
+            plusBtnValue -= stanbyBtn.frame.size.height + 2;
+            [stanbyBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
+            [[commandPanel contentView] addSubview:stanbyBtn];
+            [stanbyBtn setTransparent: NO];
+            [stanbyBtn setEnabled: YES];
+        }
         
         [summonBtn setTransparent: YES];
         [summonBtn setEnabled: NO];
@@ -12617,28 +12687,50 @@ SKIP1:
             [attackBtn setEnabled:NO];
         }
         
-        if(!wtMovedFlag && wtAttackedFlag){
-            [moveBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
-            [[commandPanel contentView] addSubview:moveBtn];
-            [moveBtn setTransparent: NO];
-            [moveBtn setEnabled: YES];
-        }
-        
+        if(!wtAttackedFlag){
         plusBtnValue -= stanbyBtn.frame.size.height + 2;
         [stanbyBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
         [[commandPanel contentView] addSubview:stanbyBtn];
         [stanbyBtn setTransparent: NO];
         [stanbyBtn setEnabled: YES];
-        
+        }
         
         [createBtn setTransparent: YES];
         [createBtn setEnabled: NO];
         
+        if(!wtAttackedFlag){
         [summonBtn setTransparent: NO];
         [summonBtn setEnabled: YES];
         plusBtnValue -= summonBtn.frame.size.height + 2;
         [summonBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
         [[commandPanel contentView] addSubview:summonBtn];
+        }else{
+            plusBtnValue2 -= summonBtn.frame.size.height + 2;
+            plusBtnValue -= summonBtn.frame.size.height + 2;
+            plusBtnValue3 -= summonBtn.frame.size.height + 2;
+            [summonBtn setTransparent: YES];
+            [summonBtn setEnabled:NO];
+        }
+        
+        if(!wtMovedFlag && wtAttackedFlag){
+            [moveBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
+            [[commandPanel contentView] addSubview:moveBtn];
+            [moveBtn setTransparent: NO];
+            [moveBtn setEnabled: YES];
+            plusBtnValue -= stanbyBtn.frame.size.height + 2;
+            [stanbyBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
+            [[commandPanel contentView] addSubview:stanbyBtn];
+            [stanbyBtn setTransparent: NO];
+            [stanbyBtn setEnabled: YES];
+        }
+        
+        if(wtMovedFlag && wtAttackedFlag){
+            plusBtnValue -= stanbyBtn.frame.size.height + 2;
+            [stanbyBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
+            [[commandPanel contentView] addSubview:stanbyBtn];
+            [stanbyBtn setTransparent: NO];
+            [stanbyBtn setEnabled: YES];
+        }
         
         plusBtnValue -= statusBtn.frame.size.height + 2;
         [statusBtn setFrame:NSMakeRect(25, plusBtnValue, 100, 23)];
@@ -12698,7 +12790,6 @@ SKIP1:
         [stanbyBtn setTransparent: NO];
         [stanbyBtn setEnabled: YES];
         
-        
         [createBtn setTransparent: YES];
         [createBtn setEnabled: NO];
         
@@ -16956,7 +17047,7 @@ SKIP1:
             }else{
                 unitTeam[x][y] = MS0->S3->team;
                 unitNum[x][y] = u.chipNumb;
-                loadNum[x][y] = u.chipNumb;
+                //loadNum[x][y] = u.chipNumb;
                 [self addAppearanceStatus:u x:x y:y];
             }
         }else{
@@ -16994,7 +17085,7 @@ SKIP1:
                     y = *o;
                     unitTeam[x][y] = MS0->S3->team;
                     unitNum[x][y] = u.chipNumb;
-                    loadNum[x][y] = u.chipNumb;
+                    //loadNum[x][y] = u.chipNumb;
                     [self addAppearanceStatus:u x:x y:y];
                 }else{
                     MS0->succeessfulFlag = false;