5 // Created by Killery on 2012/12/17.
6 // Copyright (c) 2012年 Killery. All rights reserved.
9 #import "UnitChipList.h"
11 @implementation UnitChipList
17 - (NSMutableArray*)unitChipListMA{
18 return unitChipListMA;
20 -(IBAction)submit:(id)sender{
25 [unitChipListTV setTarget:self];
26 [unitChipListTV setDoubleAction:@selector(doubleClickUCL:)];
28 [attackListTV setTarget:self];
29 [attackListTV setDoubleAction:@selector(doubleClickAL:)];
31 [equipListTV setTarget:self];
32 [equipListTV setDoubleAction:@selector(doubleClickEQ:)];
34 [attackListTV setTarget:self];
35 [attackListTV setAction:@selector(ClickAL:)];
37 [skillListTV setTarget:self];
38 [skillListTV setAction:@selector(ClickSL:)];
39 [skillListTV setDoubleAction:@selector(doubleClickSL:)];
41 [skillListBuildTV setTarget:self];
42 [skillListBuildTV setAction:@selector(ClickSLB:)];
44 [skillListUnitTV setTarget:self];
45 [skillListUnitTV setAction:@selector(ClickSLU:)];
47 [animationListTV setTarget:self];
48 [animationListTV setAction:@selector(ClickANL:)];
50 [commandListTV setTarget:self];
51 [commandListTV setAction:@selector(ClickCMD:)];
53 [comboListTV setTarget:self];
54 [comboListTV setAction:@selector(ClickCMB:)];
56 [self addPUBEquipList];
57 equipItemMA = [NSMutableArray new];
58 attackListMA = [NSMutableArray new];
59 damageListMA = [NSMutableArray new];
60 hitListMA = [NSMutableArray new];
61 commandListMA = [NSMutableArray new];
62 comboListMA = [NSMutableArray new];
63 skillListMA = [NSMutableArray new];
64 skillListBuildMA = [NSMutableArray new];
65 skillListUnitMA = [NSMutableArray new];
66 animationListMA = [NSMutableArray new];
74 scheduledTimerWithTimeInterval:1.0/30
76 selector:@selector(EventLoopUCL:)
83 scheduledTimerWithTimeInterval:1.0/30
85 selector:@selector(EventLoopANI:)
89 UnitChipListInst = self;
91 [self initFileDirectoryItem];
93 [self initFileDirectoryAttackEQ];
94 [self initFileDirectory];
95 [self initUnitChipList];
96 [self initFileDirectoryAttack];
97 [self initFileDirectoryCombo];
98 [self initTotalDamage];
101 UnitChipMax = (int)chipNumb/25+1;
109 -(void)ClickCMB:(id)sender{
110 CMBrow = (int)[comboListTV clickedRow];
113 -(void)ClickCMD:(id)sender{
114 CMDrow = (int)[commandListTV clickedRow];
117 -(void)ClickSL:(id)sender{
118 SKLrow = (int)[skillListTV clickedRow];
121 -(void)ClickANL:(id)sender{
122 ANLrow = (int)[animationListTV clickedRow];
125 -(void)doubleClickSL:(id)sender{
127 if(!UC[clickIndex].S || SKLrow < 0) return;
129 Stop = UC[clickIndex].S;
130 for (int i = 0;i < SKLrow;i++) {
131 UC[clickIndex].S = UC[clickIndex].S->next;
134 if(UC[clickIndex].S->type == 1){
135 windowPoint.x = [UCLPanelSkill frame].origin.x + 50;
136 windowPoint.y = [UCLPanelSkill frame].origin.y;
137 [SLBpanel setFrameOrigin:windowPoint];
140 [self initskillListBuild];
142 [SLBpanel makeKeyAndOrderFront:nil];
145 if(UC[clickIndex].S->type == 2){
146 windowPoint.x = [UCLPanelSkill frame].origin.x + 50;
147 windowPoint.y = [UCLPanelSkill frame].origin.y;
148 [SLUpanel setFrameOrigin:windowPoint];
151 [self initskillListUnit];
153 [SLUpanel makeKeyAndOrderFront:nil];
156 UC[clickIndex].S = Stop;
159 -(void)ClickSLB:(id)sender{
160 SKLBrow = (int)[skillListBuildTV clickedRow];
163 -(void)ClickSLU:(id)sender{
164 SKLUrow = (int)[skillListUnitTV clickedRow];
169 SKILLLIST skill[] = {
170 {NULL, @"建設", @"skl1", @"フィールドに建物を建設する", 1, 0, 0},
171 {NULL, @"召還", @"skl2", @"フィールドにユニットを召還する", 2, 0, 0},
172 {NULL, @"必殺", @"skl3", @"一定の確率で与えるダメージが2倍になる", 2, 0, 0},
175 const int skillNum = 3;
178 SKL = calloc(1, sizeof(SKILL));
181 for(int i=0;i<skillNum;i++){
184 SKL->next = calloc(1, sizeof(SKILL));
185 *SKL->next = skill[i+1];
187 if(i == 0) SKLtop = SKL;
188 if(i+1 < skillNum) SKL = SKL->next;
192 [PUBsl removeAllItems];
193 [PUBsl addItemWithTitle:[NSString stringWithFormat:@"スキルリスト"]];
197 [PUBsl addItemWithTitle:[NSString stringWithFormat:@"%@",SKL->name]];
214 double S, V, A, D, M, I;
216 for(int i = 0;i < chipNumb;i++){
331 S = UC[i].S_M.STR + STRfix;
332 V = UC[i].S_M.VIT + VITfix;
333 A = UC[i].S_M.AGI + AGIfix;
334 D = UC[i].S_M.DEX + DEXfix;
335 M = UC[i].S_M.MEN + MENfix;
336 I = UC[i].S_M.INT + INTfix;
338 UC[i].S_M.ATK = (S*5 + D*2 + A)/8;
339 UC[i].S_M.DEF = (V*5 + M*2 + S)/8;
340 UC[i].S_M.CAP = (I*4 + D*1 + M*2)/7;
341 UC[i].S_M.ACU = (D*4 + A*1 + M)/6;
342 UC[i].S_M.EVA = (A*4 + V*1 + M)/6;
344 UC[i].S_M.ATK += 0.5;
345 UC[i].S_M.DEF += 0.5;
346 UC[i].S_M.CAP += 0.5;
347 UC[i].S_M.ACU += 0.5;
348 UC[i].S_M.EVA += 0.5;
350 UC[i].S_M.ATK = floor(UC[i].S_M.ATK);
351 UC[i].S_M.DEF = floor(UC[i].S_M.DEF);
352 UC[i].S_M.CAP = floor(UC[i].S_M.CAP);
353 UC[i].S_M.ACU = floor(UC[i].S_M.ACU);
354 UC[i].S_M.EVA = floor(UC[i].S_M.EVA);
357 UC[i].eHandL.R.blow +
358 UC[i].eHandR.R.blow +
364 UC[i].eHandL.R.slash +
365 UC[i].eHandR.R.slash +
366 UC[i].eHead.R.slash +
367 UC[i].eBody.R.slash +
368 UC[i].eFoot.R.slash +
371 UC[i].eHandL.R.stub +
372 UC[i].eHandR.R.stub +
378 UC[i].eHandL.R.arrow +
379 UC[i].eHandR.R.arrow +
380 UC[i].eHead.R.arrow +
381 UC[i].eBody.R.arrow +
382 UC[i].eFoot.R.arrow +
392 UC[i].eHandL.R.shell +
393 UC[i].eHandR.R.shell +
394 UC[i].eHead.R.shell +
395 UC[i].eBody.R.shell +
396 UC[i].eFoot.R.shell +
400 UC[i].eHandL.R.flame +
401 UC[i].eHandR.R.flame +
402 UC[i].eHead.R.flame +
403 UC[i].eBody.R.flame +
404 UC[i].eFoot.R.flame +
407 UC[i].eHandL.R.cold +
408 UC[i].eHandR.R.cold +
414 UC[i].eHandL.R.electoric +
415 UC[i].eHandR.R.electoric +
416 UC[i].eHead.R.electoric +
417 UC[i].eBody.R.electoric +
418 UC[i].eFoot.R.electoric +
419 UC[i].eArm.R.electoric);
428 UC[i].eHandL.R.water +
429 UC[i].eHandR.R.water +
430 UC[i].eHead.R.water +
431 UC[i].eBody.R.water +
432 UC[i].eFoot.R.water +
442 UC[i].eHandL.R.holy +
443 UC[i].eHandR.R.holy +
449 UC[i].eHandL.R.dark +
450 UC[i].eHandR.R.dark +
456 UC[i].eHandL.R.explosion +
457 UC[i].eHandR.R.explosion +
458 UC[i].eHead.R.explosion +
459 UC[i].eBody.R.explosion +
460 UC[i].eFoot.R.explosion +
461 UC[i].eArm.R.explosion);
463 UC[i].eHandL.R.blood +
464 UC[i].eHandR.R.blood +
465 UC[i].eHead.R.blood +
466 UC[i].eBody.R.blood +
467 UC[i].eFoot.R.blood +
471 UC[i].eHandL.R.paralysis +
472 UC[i].eHandR.R.paralysis +
473 UC[i].eHead.R.paralysis +
474 UC[i].eBody.R.paralysis +
475 UC[i].eFoot.R.paralysis +
476 UC[i].eArm.R.paralysis);
478 UC[i].eHandL.R.confusion +
479 UC[i].eHandR.R.confusion +
480 UC[i].eHead.R.confusion +
481 UC[i].eBody.R.confusion +
482 UC[i].eFoot.R.confusion +
483 UC[i].eArm.R.confusion);
485 UC[i].eHandL.R.poison +
486 UC[i].eHandR.R.poison +
487 UC[i].eHead.R.poison +
488 UC[i].eBody.R.poison +
489 UC[i].eFoot.R.poison +
490 UC[i].eArm.R.poison);
492 UC[i].eHandL.R.sleep +
493 UC[i].eHandR.R.sleep +
494 UC[i].eHead.R.sleep +
495 UC[i].eBody.R.sleep +
496 UC[i].eFoot.R.sleep +
499 UC[i].eHandL.R.charm +
500 UC[i].eHandR.R.charm +
501 UC[i].eHead.R.charm +
502 UC[i].eBody.R.charm +
503 UC[i].eFoot.R.charm +
506 UC[i].eHandL.R.silent +
507 UC[i].eHandR.R.silent +
508 UC[i].eHead.R.silent +
509 UC[i].eBody.R.silent +
510 UC[i].eFoot.R.silent +
511 UC[i].eArm.R.silent);
512 UC[i].R_F.blow -= blowFix;
513 UC[i].R_F.slash -= slashFix;
514 UC[i].R_F.stub -= stubFix;
515 UC[i].R_F.arrow -= arrowFix;
516 UC[i].R_F.gun -= gunFix;
517 UC[i].R_F.shell -= shellFix;
518 UC[i].R_F.flame -= flameFix;
519 UC[i].R_F.cold -= coldFix;
520 UC[i].R_F.electoric -= electoricFix;
521 UC[i].R_F.air -= airFix;
522 UC[i].R_F.water -= waterFix;
523 UC[i].R_F.gas -= gasFix;
524 UC[i].R_F.holy -= holyFix;
525 UC[i].R_F.dark -= darkFix;
526 UC[i].R_F.explosion -= explosionFix;
527 UC[i].R_F.blood -= bloodFix;
528 UC[i].R_F.paralysis -= paralysisFix;
529 UC[i].R_F.confusion -= confusionFix;
530 UC[i].R_F.poison -= poisonFix;
531 UC[i].R_F.sleep -= sleepFix;
532 UC[i].R_F.charm -= charmFix;
533 UC[i].R_F.silent -= silentFix;
540 NSInteger clickIndex = -1;
541 NSInteger clickIndexAL = -1;
542 NSInteger clickIndexEQ = -1;
545 -(void)EventLoopUCL:(NSTimer*)time{
556 double S, V, A, D, M, I;
560 UC[clickIndex].eHandL.STR +
561 UC[clickIndex].eHandR.STR +
562 UC[clickIndex].eHead.STR +
563 UC[clickIndex].eBody.STR +
564 UC[clickIndex].eFoot.STR +
565 UC[clickIndex].eArm.STR) +
566 UC[clickIndex].S_M.STR *(
567 UC[clickIndex].eHandL.pSTR +
568 UC[clickIndex].eHandR.pSTR +
569 UC[clickIndex].eHead.pSTR +
570 UC[clickIndex].eBody.pSTR +
571 UC[clickIndex].eFoot.pSTR +
572 UC[clickIndex].eArm.pSTR +
577 UC[clickIndex].eHandL.VIT +
578 UC[clickIndex].eHandR.VIT +
579 UC[clickIndex].eHead.VIT +
580 UC[clickIndex].eBody.VIT +
581 UC[clickIndex].eFoot.VIT +
582 UC[clickIndex].eArm.VIT) +
583 UC[clickIndex].S_M.VIT *(
584 UC[clickIndex].eHandL.pVIT +
585 UC[clickIndex].eHandR.pVIT +
586 UC[clickIndex].eHead.pVIT +
587 UC[clickIndex].eBody.pVIT +
588 UC[clickIndex].eFoot.pVIT +
589 UC[clickIndex].eArm.pVIT +
593 UC[clickIndex].eHandL.AGI +
594 UC[clickIndex].eHandR.AGI +
595 UC[clickIndex].eHead.AGI +
596 UC[clickIndex].eBody.AGI +
597 UC[clickIndex].eFoot.AGI +
598 UC[clickIndex].eArm.AGI) +
599 UC[clickIndex].S_M.AGI *(
600 UC[clickIndex].eHandL.pAGI +
601 UC[clickIndex].eHandR.pAGI +
602 UC[clickIndex].eHead.pAGI +
603 UC[clickIndex].eBody.pAGI +
604 UC[clickIndex].eFoot.pAGI +
605 UC[clickIndex].eArm.pAGI +
609 UC[clickIndex].eHandL.DEX +
610 UC[clickIndex].eHandR.DEX +
611 UC[clickIndex].eHead.DEX +
612 UC[clickIndex].eBody.DEX +
613 UC[clickIndex].eFoot.DEX +
614 UC[clickIndex].eArm.DEX) +
615 UC[clickIndex].S_M.DEX *(
616 UC[clickIndex].eHandL.pDEX +
617 UC[clickIndex].eHandR.pDEX +
618 UC[clickIndex].eHead.pDEX +
619 UC[clickIndex].eBody.pDEX +
620 UC[clickIndex].eFoot.pDEX +
621 UC[clickIndex].eArm.pDEX +
625 UC[clickIndex].eHandL.MEN +
626 UC[clickIndex].eHandR.MEN +
627 UC[clickIndex].eHead.MEN +
628 UC[clickIndex].eBody.MEN +
629 UC[clickIndex].eFoot.MEN +
630 UC[clickIndex].eArm.MEN) +
631 UC[clickIndex].S_M.MEN *(
632 UC[clickIndex].eHandL.pMEN +
633 UC[clickIndex].eHandR.pMEN +
634 UC[clickIndex].eHead.pMEN +
635 UC[clickIndex].eBody.pMEN +
636 UC[clickIndex].eFoot.pMEN +
637 UC[clickIndex].eArm.pMEN +
641 UC[clickIndex].eHandL.INT +
642 UC[clickIndex].eHandR.INT +
643 UC[clickIndex].eHead.INT +
644 UC[clickIndex].eBody.INT +
645 UC[clickIndex].eFoot.INT +
646 UC[clickIndex].eArm.INT) +
647 UC[clickIndex].S_M.INT *(
648 UC[clickIndex].eHandL.pINT +
649 UC[clickIndex].eHandR.pINT +
650 UC[clickIndex].eHead.pINT +
651 UC[clickIndex].eBody.pINT +
652 UC[clickIndex].eFoot.pINT +
653 UC[clickIndex].eArm.pINT +
657 UC[clickIndex].eHandL.LUK +
658 UC[clickIndex].eHandR.LUK +
659 UC[clickIndex].eHead.LUK +
660 UC[clickIndex].eBody.LUK +
661 UC[clickIndex].eFoot.LUK +
662 UC[clickIndex].eArm.LUK) +
663 UC[clickIndex].S_M.LUK *(
664 UC[clickIndex].eHandL.pLUK +
665 UC[clickIndex].eHandR.pLUK +
666 UC[clickIndex].eHead.pLUK +
667 UC[clickIndex].eBody.pLUK +
668 UC[clickIndex].eFoot.pLUK +
669 UC[clickIndex].eArm.pLUK +
673 S = [TFstr intValue] + STRfix;
674 V = [TFvit intValue] + VITfix;
675 A = [TFagi intValue] + AGIfix;
676 D = [TFdex intValue] + DEXfix;
677 M = [TFmen intValue] + MENfix;
678 I = [TFint intValue] + INTfix;
680 UC[clickIndex].S_M.ATK = (S*5 + D*2 + A)/8;
681 UC[clickIndex].S_M.DEF = (V*5 + M*2 + S)/8;
682 UC[clickIndex].S_M.CAP = (I*4 + D*1 + M*2)/7;
683 UC[clickIndex].S_M.ACU = (D*4 + A*1 + M)/6;
684 UC[clickIndex].S_M.EVA = (A*4 + A*1 + M)/6;
686 UC[clickIndex].S_M.ATK += 0.5;
687 UC[clickIndex].S_M.DEF += 0.5;
688 UC[clickIndex].S_M.CAP += 0.5;
689 UC[clickIndex].S_M.ACU += 0.5;
690 UC[clickIndex].S_M.EVA += 0.5;
692 UC[clickIndex].S_M.ATK = floor(UC[clickIndex].S_M.ATK);
693 UC[clickIndex].S_M.DEF = floor(UC[clickIndex].S_M.DEF);
694 UC[clickIndex].S_M.CAP = floor(UC[clickIndex].S_M.CAP);
695 UC[clickIndex].S_M.ACU = floor(UC[clickIndex].S_M.ACU);
696 UC[clickIndex].S_M.EVA = floor(UC[clickIndex].S_M.EVA);
699 [TFbp setStringValue:[NSString stringWithFormat:@"BP %g", (floor)(UC[clickIndex].S_M.BP)]];
700 [TFatk setStringValue:[NSString stringWithFormat:@"攻撃力 %g", (floor)(UC[clickIndex].S_M.ATK)]];
701 [TFdef setStringValue:[NSString stringWithFormat:@"防御力 %g", (floor)(UC[clickIndex].S_M.DEF)]];
702 [TFcap setStringValue:[NSString stringWithFormat:@"演算力 %g", (floor)(UC[clickIndex].S_M.CAP)]];
703 [TFacu setStringValue:[NSString stringWithFormat:@"命中値 %g", (floor)(UC[clickIndex].S_M.ACU)]];
704 [TFeva setStringValue:[NSString stringWithFormat:@"回避値 %g", (floor)(UC[clickIndex].S_M.EVA)]];
707 UC[clickIndex].eHandL.R.blow +
708 UC[clickIndex].eHandR.R.blow +
709 UC[clickIndex].eHead.R.blow +
710 UC[clickIndex].eBody.R.blow +
711 UC[clickIndex].eFoot.R.blow +
712 UC[clickIndex].eArm.R.blow);
714 UC[clickIndex].eHandL.R.slash +
715 UC[clickIndex].eHandR.R.slash +
716 UC[clickIndex].eHead.R.slash +
717 UC[clickIndex].eBody.R.slash +
718 UC[clickIndex].eFoot.R.slash +
719 UC[clickIndex].eArm.R.slash);
721 UC[clickIndex].eHandL.R.stub +
722 UC[clickIndex].eHandR.R.stub +
723 UC[clickIndex].eHead.R.stub +
724 UC[clickIndex].eBody.R.stub +
725 UC[clickIndex].eFoot.R.stub +
726 UC[clickIndex].eArm.R.stub);
728 UC[clickIndex].eHandL.R.arrow +
729 UC[clickIndex].eHandR.R.arrow +
730 UC[clickIndex].eHead.R.arrow +
731 UC[clickIndex].eBody.R.arrow +
732 UC[clickIndex].eFoot.R.arrow +
733 UC[clickIndex].eArm.R.arrow);
735 UC[clickIndex].eHandL.R.gun +
736 UC[clickIndex].eHandR.R.gun +
737 UC[clickIndex].eHead.R.gun +
738 UC[clickIndex].eBody.R.gun +
739 UC[clickIndex].eFoot.R.gun +
740 UC[clickIndex].eArm.R.gun);
742 UC[clickIndex].eHandL.R.shell +
743 UC[clickIndex].eHandR.R.shell +
744 UC[clickIndex].eHead.R.shell +
745 UC[clickIndex].eBody.R.shell +
746 UC[clickIndex].eFoot.R.shell +
747 UC[clickIndex].eArm.R.shell);
750 UC[clickIndex].eHandL.R.flame +
751 UC[clickIndex].eHandR.R.flame +
752 UC[clickIndex].eHead.R.flame +
753 UC[clickIndex].eBody.R.flame +
754 UC[clickIndex].eFoot.R.flame +
755 UC[clickIndex].eArm.R.flame);
757 UC[clickIndex].eHandL.R.cold +
758 UC[clickIndex].eHandR.R.cold +
759 UC[clickIndex].eHead.R.cold +
760 UC[clickIndex].eBody.R.cold +
761 UC[clickIndex].eFoot.R.cold +
762 UC[clickIndex].eArm.R.cold);
764 UC[clickIndex].eHandL.R.electoric +
765 UC[clickIndex].eHandR.R.electoric +
766 UC[clickIndex].eHead.R.electoric +
767 UC[clickIndex].eBody.R.electoric +
768 UC[clickIndex].eFoot.R.electoric +
769 UC[clickIndex].eArm.R.electoric);
771 UC[clickIndex].eHandL.R.air +
772 UC[clickIndex].eHandR.R.air +
773 UC[clickIndex].eHead.R.air +
774 UC[clickIndex].eBody.R.air +
775 UC[clickIndex].eFoot.R.air +
776 UC[clickIndex].eArm.R.air);
778 UC[clickIndex].eHandL.R.water +
779 UC[clickIndex].eHandR.R.water +
780 UC[clickIndex].eHead.R.water +
781 UC[clickIndex].eBody.R.water +
782 UC[clickIndex].eFoot.R.water +
783 UC[clickIndex].eArm.R.water);
785 UC[clickIndex].eHandL.R.gas +
786 UC[clickIndex].eHandR.R.gas +
787 UC[clickIndex].eHead.R.gas +
788 UC[clickIndex].eBody.R.gas +
789 UC[clickIndex].eFoot.R.gas +
790 UC[clickIndex].eArm.R.gas);
792 UC[clickIndex].eHandL.R.holy +
793 UC[clickIndex].eHandR.R.holy +
794 UC[clickIndex].eHead.R.holy +
795 UC[clickIndex].eBody.R.holy +
796 UC[clickIndex].eFoot.R.holy +
797 UC[clickIndex].eArm.R.holy);
799 UC[clickIndex].eHandL.R.dark +
800 UC[clickIndex].eHandR.R.dark +
801 UC[clickIndex].eHead.R.dark +
802 UC[clickIndex].eBody.R.dark +
803 UC[clickIndex].eFoot.R.dark +
804 UC[clickIndex].eArm.R.dark);
806 UC[clickIndex].eHandL.R.explosion +
807 UC[clickIndex].eHandR.R.explosion +
808 UC[clickIndex].eHead.R.explosion +
809 UC[clickIndex].eBody.R.explosion +
810 UC[clickIndex].eFoot.R.explosion +
811 UC[clickIndex].eArm.R.explosion);
813 UC[clickIndex].eHandL.R.blood +
814 UC[clickIndex].eHandR.R.blood +
815 UC[clickIndex].eHead.R.blood +
816 UC[clickIndex].eBody.R.blood +
817 UC[clickIndex].eFoot.R.blood +
818 UC[clickIndex].eArm.R.blood);
821 UC[clickIndex].eHandL.R.paralysis +
822 UC[clickIndex].eHandR.R.paralysis +
823 UC[clickIndex].eHead.R.paralysis +
824 UC[clickIndex].eBody.R.paralysis +
825 UC[clickIndex].eFoot.R.paralysis +
826 UC[clickIndex].eArm.R.paralysis);
828 UC[clickIndex].eHandL.R.confusion +
829 UC[clickIndex].eHandR.R.confusion +
830 UC[clickIndex].eHead.R.confusion +
831 UC[clickIndex].eBody.R.confusion +
832 UC[clickIndex].eFoot.R.confusion +
833 UC[clickIndex].eArm.R.confusion);
835 UC[clickIndex].eHandL.R.poison +
836 UC[clickIndex].eHandR.R.poison +
837 UC[clickIndex].eHead.R.poison +
838 UC[clickIndex].eBody.R.poison +
839 UC[clickIndex].eFoot.R.poison +
840 UC[clickIndex].eArm.R.poison);
842 UC[clickIndex].eHandL.R.sleep +
843 UC[clickIndex].eHandR.R.sleep +
844 UC[clickIndex].eHead.R.sleep +
845 UC[clickIndex].eBody.R.sleep +
846 UC[clickIndex].eFoot.R.sleep +
847 UC[clickIndex].eArm.R.sleep);
849 UC[clickIndex].eHandL.R.charm +
850 UC[clickIndex].eHandR.R.charm +
851 UC[clickIndex].eHead.R.charm +
852 UC[clickIndex].eBody.R.charm +
853 UC[clickIndex].eFoot.R.charm +
854 UC[clickIndex].eArm.R.charm);
856 UC[clickIndex].eHandL.R.silent +
857 UC[clickIndex].eHandR.R.silent +
858 UC[clickIndex].eHead.R.silent +
859 UC[clickIndex].eBody.R.silent +
860 UC[clickIndex].eFoot.R.silent +
861 UC[clickIndex].eArm.R.silent);
862 UC[clickIndex].R_F.blow -= blowFix;
863 UC[clickIndex].R_F.slash -= slashFix;
864 UC[clickIndex].R_F.stub -= stubFix;
865 UC[clickIndex].R_F.arrow -= arrowFix;
866 UC[clickIndex].R_F.gun -= gunFix;
867 UC[clickIndex].R_F.shell -= shellFix;
868 UC[clickIndex].R_F.flame -= flameFix;
869 UC[clickIndex].R_F.cold -= coldFix;
870 UC[clickIndex].R_F.electoric -= electoricFix;
871 UC[clickIndex].R_F.air -= airFix;
872 UC[clickIndex].R_F.water -= waterFix;
873 UC[clickIndex].R_F.gas -= gasFix;
874 UC[clickIndex].R_F.holy -= holyFix;
875 UC[clickIndex].R_F.dark -= darkFix;
876 UC[clickIndex].R_F.explosion -= explosionFix;
877 UC[clickIndex].R_F.blood -= bloodFix;
878 UC[clickIndex].R_F.paralysis -= paralysisFix;
879 UC[clickIndex].R_F.confusion -= confusionFix;
880 UC[clickIndex].R_F.poison -= poisonFix;
881 UC[clickIndex].R_F.sleep -= sleepFix;
882 UC[clickIndex].R_F.charm -= charmFix;
883 UC[clickIndex].R_F.silent -= silentFix;
886 if(SKLBrow == -1 || [skillListBuildMA count] == 0){}
889 Stop = UC[clickIndex].S;
890 for(int i = 0;i< SKLrow;i++){
891 UC[clickIndex].S = UC[clickIndex].S->next;
894 sup = [[skillListBuildMA objectAtIndex:SKLBrow] valueForKeyPath:@"sel"];
895 sup = sup>>8 & 0xffff;
896 UC[clickIndex].S->list[SKLBrow] = (int)sup+1;
897 [skillListBuildAC setValue:[NSString stringWithFormat:@"資%d食%d金%d",
898 BC[sup].Csupply, BC[sup].Cfood, BC[sup].Cmoney] forKeyPath:@"selection.manko"];
900 UC[clickIndex].S = Stop;
904 if(SKLUrow == -1 || [skillListUnitMA count] == 0){}
907 Stop = UC[clickIndex].S;
908 for(int i = 0;i< SKLrow;i++){
909 UC[clickIndex].S = UC[clickIndex].S->next;
912 oops = [[skillListUnitMA objectAtIndex:SKLUrow] valueForKeyPath:@"sel"];
913 oops = oops>>8 & 0xffff;
914 UC[clickIndex].S->list[SKLUrow] = (int)oops+1;
915 oops = [[[skillListUnitMA objectAtIndex:SKLUrow] valueForKeyPath:@"MP"] intValue];
916 //oops = oops>>8 & 0xffff;
917 UC[clickIndex].S->cost[SKLUrow] = (int)oops;
919 UC[clickIndex].S = Stop;
923 if (AVpreview.rate > 0 && AVpreview.error == nil) {
929 //NSLog(@"[%ld, %ld]", ATmovBC.state, ATaniBC.state);
931 if([ATalphaBtn state] == YES) ATalphaFlag = true;
932 else ATalphaFlag = false;
935 frameMax = (int)[animationListMA count];
938 if(!EQmodeFlag) if(clickIndex <= -1) return;
939 if(EQmodeFlag) if(clickIndexEQ <= -1) return;
940 if(EQmodeFlag) if(cil <= -1) return;
944 atk = EQ[clickIndexEQ].A;
949 else atk = UC[clickIndex].A;
957 if(clickIndexAL <= -1) return;
959 for(int i = 0;i < clickIndexAL;i++){
966 EQ[clickIndexEQ].A = atkTop;
971 else UC[clickIndex].A = atkTop;
985 EQ[clickIndexEQ].A = atkTop;
990 else UC[clickIndex].A = atkTop;
998 for (int i = 0; i < frameMax; i++) {
1000 ani->name = [[[animationListMA objectAtIndex:i] valueForKeyPath:@"name"] retain];
1001 ani->names = [[[animationListMA objectAtIndex:i] valueForKeyPath:@"snd"] retain];
1009 atk->AN.ANI = aniTop;
1013 EQ[clickIndexEQ].A = atkTop;
1016 if(loadChipSideFlag)
1018 else UC[clickIndex].A = atkTop;
1022 -(void)setTotalDamage:(int)index row:(int)row{
1026 if(!UC[index].A) return;
1027 for (int i=0; i < row;i++) {
1028 if(UC[index].A->next != NULL) UC[index].A = UC[index].A->next;
1031 Dtop = UC[index].A->D;
1032 UC[index].A->totalD = 0;
1033 UC[index].A->bulletC = UC[index].A->bullet;
1034 while (UC[index].A->D != NULL) {
1035 if(UC[index].A->D->type == 0) UC[index].A->totalD += UC[index].A->D->count + UC[index].A->D->pCount/100*UC[index].S_M.ATK;
1036 if(UC[index].A->D->type == 1) UC[index].A->totalD += UC[index].A->D->count + UC[index].A->D->pCount/100*UC[index].S_M.DEF;
1037 if(UC[index].A->D->type == 2) UC[index].A->totalD += UC[index].A->D->count + UC[index].A->D->pCount/100*UC[index].S_M.ACU;
1038 if(UC[index].A->D->type == 3) UC[index].A->totalD += UC[index].A->D->count + UC[index].A->D->pCount/100*UC[index].S_M.EVA;
1039 if(UC[index].A->D->type == 4) UC[index].A->totalD += UC[index].A->D->count + UC[index].A->D->pCount/100*UC[index].S_M.CAP;
1040 UC[index].A->D = UC[index].A->D->next;
1042 UC[index].A->totalD = floor(UC[index].A->totalD + 0.5);
1043 UC[index].A->D = Dtop;
1047 -(void)setTotalDamage2:(int)index row:(int)row{
1051 if(!LC[index].A) return;
1052 for (int i=0; i < row;i++) {
1053 if(LC[index].A->next != NULL) LC[index].A = LC[index].A->next;
1056 Dtop = LC[index].A->D;
1057 LC[index].A->totalD = 0;
1058 LC[index].A->bulletC = LC[index].A->bullet;
1059 while (LC[index].A->D != NULL) {
1060 LC[index].A->totalD += LC[index].A->D->count;
1061 LC[index].A->D = LC[index].A->D->next;
1063 LC[index].A->totalD = floor(LC[index].A->totalD + 0.5);
1064 LC[index].A->D = Dtop;
1069 -(void)setTotalDamageEQ:(int)index row:(int)row{
1073 if(!EQ[index].A) return;
1074 for (int i=0; i < row;i++) {
1075 if(EQ[index].A->next != NULL) EQ[index].A = EQ[index].A->next;
1078 Dtop = EQ[index].A->D;
1079 EQ[index].A->totalD = 0;
1080 EQ[index].A->bulletC = EQ[index].A->bullet;
1081 while (EQ[index].A->D != NULL) {
1082 if(EQ[index].A->D->type == 0) EQ[index].A->totalD += EQ[index].A->D->count;
1083 if(EQ[index].A->D->type == 1) EQ[index].A->totalD += EQ[index].A->D->count;
1084 if(EQ[index].A->D->type == 2) EQ[index].A->totalD += EQ[index].A->D->count;
1085 if(EQ[index].A->D->type == 3) EQ[index].A->totalD += EQ[index].A->D->count;
1086 if(EQ[index].A->D->type == 4) EQ[index].A->totalD += EQ[index].A->D->count;
1087 EQ[index].A->D = EQ[index].A->D->next;
1089 EQ[index].A->totalD = floor(EQ[index].A->totalD + 0.5);
1090 EQ[index].A->D = Dtop;
1095 -(void)addPUBEquipList{
1097 [PUPtEquip removeAllItems];
1099 [PUPtEquip addItemWithTitle:@"装備リスト"];
1100 for (int i = 0; i < eItemNum; i++) {
1101 [PUPtEquip addItemWithTitle:EQ[i].nameRecognition];
1106 -(void)initSkillList{
1107 [self willChangeValueForKey:@"skillListMA"];
1108 [skillListMA removeAllObjects];
1109 [self didChangeValueForKey:@"skillListMA"];
1113 SKtop = UC[clickIndex].S;
1114 while (UC[clickIndex].S) {
1115 NSMutableDictionary* dict = [NSMutableDictionary new];
1118 for(int i = 1;i < UC[clickIndex].S->type;i++){
1121 [dict setValue:[NSString stringWithFormat:@"%@", SKL->name] forKey:@"name"];
1124 [self willChangeValueForKey:@"skillListMA"];
1125 [skillListMA addObject:dict];
1126 [self didChangeValueForKey:@"skillListMA"];
1128 UC[clickIndex].S = UC[clickIndex].S->next;
1129 }UC[clickIndex].S = SKtop;
1133 -(void)initskillListBuild{
1134 [self willChangeValueForKey:@"skillListBuildMA"];
1135 [skillListBuildMA removeAllObjects];
1136 [self didChangeValueForKey:@"skillListBuildMA"];
1138 for(int i = 0;UC[clickIndex].S->list[i] > 0;i++) {
1139 NSMutableDictionary* dict = [NSMutableDictionary new];
1141 NSMutableArray *Array = [NSMutableArray array];
1143 for(int k = 0;k<BuildChipNum;k++){
1144 [Array addObject:[BC[k].nameR retain]];
1145 [dict setValue:[NSString stringWithFormat:@"資%d食%d金%d", BC[k].Csupply, BC[k].Cfood, BC[k].Cmoney] forKey:@"manko"];
1147 [dict setValue:Array forKey:@"name"];
1150 val = UC[clickIndex].S->list[i] - 1;
1151 val = val<<8 | (0xc7 & 0xff);
1152 [dict setValue:val forKey:@"sel"];
1154 [self willChangeValueForKey:@"skillListBuildMA"];
1155 [skillListBuildMA addObject:dict];
1156 [self didChangeValueForKey:@"skillListBuildMA"];
1162 -(void)initskillListUnit{
1163 [self willChangeValueForKey:@"skillListUnitMA"];
1164 [skillListUnitMA removeAllObjects];
1165 [self didChangeValueForKey:@"skillListUnitMA"];
1168 for(int i = 0;UC[clickIndex].S->list[i] > 0;i++) {
1169 NSMutableDictionary* dict = [NSMutableDictionary new];
1171 NSMutableArray *Array = [NSMutableArray array];
1173 for(int k = 0;k<UCN;k++){
1174 [Array addObject:[UC[k].name retain]];
1176 [dict setValue:Array forKey:@"name"];
1178 [dict setValue:[NSString stringWithFormat:@"%g", UC[clickIndex].S->cost[i]] forKey:@"MP"];
1181 val = UC[clickIndex].S->list[i] - 1;
1182 val = val<<8 | (0xc7 & 0xff);
1183 [dict setValue:val forKey:@"sel"];
1185 [self willChangeValueForKey:@"skillListUnitMA"];
1186 [skillListUnitMA addObject:dict];
1187 [self didChangeValueForKey:@"skillListUnitMA"];
1194 [self willChangeValueForKey:@"equipItemMA"];
1195 [equipItemMA removeAllObjects];
1196 [self didChangeValueForKey:@"equipItemMA"];
1204 if(UC[clickIndex].eHandR.name != NULL) {
1205 NSMutableDictionary* dict = [NSMutableDictionary new];
1206 [dict setValue:[NSString stringWithFormat:@"%@", UC[clickIndex].eHandR.name] forKey:@"name"];
1207 UC[clickIndex].eHandRflag = true;
1208 [self willChangeValueForKey:@"equipItemMA"];
1209 [equipItemMA insertObject:dict atIndex:[equipItemTV selectedRow]+1];
1210 [self didChangeValueForKey:@"equipItemMA"];
1212 if(UC[clickIndex].eHandL.name != NULL) {
1213 NSMutableDictionary* dict = [NSMutableDictionary new];
1214 [dict setValue:[NSString stringWithFormat:@"%@", UC[clickIndex].eHandL.name] forKey:@"name"];
1215 UC[clickIndex].eHandLflag = true;
1216 [self willChangeValueForKey:@"equipItemMA"];
1217 [equipItemMA insertObject:dict atIndex:[equipItemTV selectedRow]+1];
1218 [self didChangeValueForKey:@"equipItemMA"];
1220 if(UC[clickIndex].eHead.name != NULL) {
1221 NSMutableDictionary* dict = [NSMutableDictionary new];
1222 [dict setValue:[NSString stringWithFormat:@"%@", UC[clickIndex].eHead.name] forKey:@"name"];
1224 [self willChangeValueForKey:@"equipItemMA"];
1225 [equipItemMA insertObject:dict atIndex:[equipItemTV selectedRow]+1];
1226 [self didChangeValueForKey:@"equipItemMA"];
1228 if(UC[clickIndex].eBody.name != NULL) {
1229 NSMutableDictionary* dict = [NSMutableDictionary new];
1230 [dict setValue:[NSString stringWithFormat:@"%@", UC[clickIndex].eBody.name] forKey:@"name"];
1232 [self willChangeValueForKey:@"equipItemMA"];
1233 [equipItemMA insertObject:dict atIndex:[equipItemTV selectedRow]+1];
1234 [self didChangeValueForKey:@"equipItemMA"];
1236 if(UC[clickIndex].eFoot.name != NULL) {
1237 NSMutableDictionary* dict = [NSMutableDictionary new];
1238 [dict setValue:[NSString stringWithFormat:@"%@", UC[clickIndex].eFoot.name] forKey:@"name"];
1240 [self willChangeValueForKey:@"equipItemMA"];
1241 [equipItemMA insertObject:dict atIndex:[equipItemTV selectedRow]+1];
1242 [self didChangeValueForKey:@"equipItemMA"];
1244 if(UC[clickIndex].eArm.name != NULL) {
1245 NSMutableDictionary* dict = [NSMutableDictionary new];
1246 [dict setValue:[NSString stringWithFormat:@"%@", UC[clickIndex].eArm.name] forKey:@"name"];
1248 [self willChangeValueForKey:@"equipItemMA"];
1249 [equipItemMA insertObject:dict atIndex:[equipItemTV selectedRow]+1];
1250 [self didChangeValueForKey:@"equipItemMA"];
1254 if(UC[clickIndex].eHandL.nameID){
1255 for(int j = 0;j < eItemNum;j++){
1256 if([UC[clickIndex].eHandL.nameID isEqualToString:EQ[j].nameID]){
1257 UC[clickIndex].eHandL = EQ[j];
1258 UC[clickIndex].eHandL.A = EQ[j].A;
1263 if(UC[clickIndex].eHandR.nameID){
1264 for(int j = 0;j < eItemNum;j++){
1265 if([UC[clickIndex].eHandR.nameID isEqualToString:EQ[j].nameID]){
1266 UC[clickIndex].eHandR = EQ[j];
1267 UC[clickIndex].eHandR.A = EQ[j].A;
1272 if(UC[clickIndex].eHead.nameID){
1273 for(int j = 0;j < eItemNum;j++){
1274 if([UC[clickIndex].eHead.nameID isEqualToString:EQ[j].nameID]){
1275 UC[clickIndex].eHead = EQ[j];
1280 if(UC[clickIndex].eBody.nameID){
1281 for(int j = 0;j < eItemNum;j++){
1282 if([UC[clickIndex].eBody.nameID isEqualToString:EQ[j].nameID]){
1283 UC[clickIndex].eBody = EQ[j];
1288 if(UC[clickIndex].eFoot.nameID){
1289 for(int j = 0;j < eItemNum;j++){
1290 if([UC[clickIndex].eFoot.nameID isEqualToString:EQ[j].nameID]){
1291 UC[clickIndex].eFoot = EQ[j];
1296 if(UC[clickIndex].eArm.nameID){
1297 for(int j = 0;j < eItemNum;j++){
1298 if([UC[clickIndex].eArm.nameID isEqualToString:EQ[j].nameID]){
1299 UC[clickIndex].eArm = EQ[j];
1305 -(IBAction)equipItemSelected:(id)sender{
1306 pubEquipItemIndex = [PUPtEquip indexOfSelectedItem];
1307 pubEquipItemIndex -= 1;
1310 bool eHeadFlag = false;
1311 bool eBodyFlag = false;
1312 bool eFootFlag = false;
1313 bool eArmFlag = false;
1314 bool eHandRFlag = false;
1315 bool eHandLFlag = false;
1317 -(IBAction)insertEquip:(id)sender{
1319 if(pubEquipItemIndex >= 0){
1321 if(EQ[pubEquipItemIndex].type == 2){
1322 if(UC[clickIndex].eHandLflag && UC[clickIndex].eHandRflag) return;
1323 if(UC[clickIndex].eHandRflag) {
1324 UC[clickIndex].eHandLflag = true;
1325 UC[clickIndex].eHandL = EQ[pubEquipItemIndex];
1327 UC[clickIndex].eHandR = EQ[pubEquipItemIndex];
1328 UC[clickIndex].eHandRflag = true;
1330 }else if(EQ[pubEquipItemIndex].type == 3){
1331 if(UC[clickIndex].eHeadflag) return;
1332 UC[clickIndex].eHead = EQ[pubEquipItemIndex];
1333 UC[clickIndex].eHeadflag = true;
1334 }else if(EQ[pubEquipItemIndex].type == 4){
1335 if(UC[clickIndex].eBodyflag) return;
1336 UC[clickIndex].eBody = EQ[pubEquipItemIndex];
1337 UC[clickIndex].eBodyflag = true;
1338 }else if(EQ[pubEquipItemIndex].type == 5){
1339 if(UC[clickIndex].eFootflag) return;
1340 UC[clickIndex].eFoot = EQ[pubEquipItemIndex];
1341 UC[clickIndex].eFootflag = true;
1342 }else if(EQ[pubEquipItemIndex].type == 6){
1343 if(UC[clickIndex].eArmflag) return;
1344 UC[clickIndex].eArm = EQ[pubEquipItemIndex];
1345 UC[clickIndex].eArmflag = true;
1346 }else if(EQ[pubEquipItemIndex].type == 7){
1347 if(!UC[clickIndex].eHandLflag && !UC[clickIndex].eHandRflag){
1349 UC[clickIndex].eHandLflag = true;
1350 UC[clickIndex].eHandRflag = true;
1351 UC[clickIndex].eHandR = EQ[pubEquipItemIndex];
1356 NSMutableDictionary* dict = [NSMutableDictionary new];
1357 [dict setValue:[NSString stringWithFormat:@"%@", EQ[pubEquipItemIndex].name] forKey:@"name"];
1358 [self willChangeValueForKey:@"equipItemMA"];
1359 [equipItemMA insertObject:dict atIndex:[equipItemTV selectedRow]+1];
1360 [self didChangeValueForKey:@"equipItemMA"];
1363 -(IBAction)removeEquip:(id)sender{
1366 if([equipItemTV selectedRow] >= 0){
1368 if([[[equipItemMA objectAtIndex:[equipItemTV selectedRow]] valueForKey:@"name"] isEqualToString:UC[clickIndex].eHandL.name]){
1370 if(UC[clickIndex].eHandLflag){
1371 if(UC[clickIndex].eHandL.type == 7){
1372 UC[clickIndex].eHandR = nilEquip;
1373 UC[clickIndex].eHandRflag = false;
1375 UC[clickIndex].eHandL = nilEquip;
1376 UC[clickIndex].eHandLflag = false;
1380 else if([[[equipItemMA objectAtIndex:[equipItemTV selectedRow]] valueForKey:@"name"] isEqualToString:UC[clickIndex].eHandR.name]){
1381 if(UC[clickIndex].eHandRflag){
1382 if(UC[clickIndex].eHandR.type == 7){
1383 UC[clickIndex].eHandL = nilEquip;
1384 UC[clickIndex].eHandLflag = false;
1386 UC[clickIndex].eHandR = nilEquip;
1387 UC[clickIndex].eHandRflag = false;
1390 else if([[[equipItemMA objectAtIndex:[equipItemTV selectedRow]] valueForKey:@"name"] isEqualToString:UC[clickIndex].eHead.name]){
1391 UC[clickIndex].eHead = nilEquip;
1392 UC[clickIndex].eHeadflag = false;
1394 else if([[[equipItemMA objectAtIndex:[equipItemTV selectedRow]] valueForKey:@"name"] isEqualToString:UC[clickIndex].eBody.name]){
1395 UC[clickIndex].eBody = nilEquip;
1396 UC[clickIndex].eBodyflag = false;
1398 else if([[[equipItemMA objectAtIndex:[equipItemTV selectedRow]] valueForKey:@"name"] isEqualToString:UC[clickIndex].eFoot.name]){
1399 UC[clickIndex].eFoot = nilEquip;
1400 UC[clickIndex].eFootflag = false;
1402 else if([[[equipItemMA objectAtIndex:[equipItemTV selectedRow]] valueForKey:@"name"] isEqualToString:UC[clickIndex].eArm.name]){
1403 UC[clickIndex].eArm = nilEquip;
1404 UC[clickIndex].eArmflag = false;
1409 [self willChangeValueForKey:@"equipItemMA"];
1410 [equipItemMA removeObjectAtIndex:[equipItemTV selectedRow]];
1411 [self didChangeValueForKey:@"equipItemMA"];
1416 -(void)doubleClickEQ:(id)sender{
1417 clickIndexEQ = [equipListTV clickedRow];
1419 if(EQ[clickIndexEQ].name) [ILTFname setStringValue:EQ[clickIndexEQ].name];
1420 else [ILTFname setStringValue:@""];
1421 if(EQ[clickIndexEQ].nameRecognition) [ILTFnameR setStringValue:EQ[clickIndexEQ].nameRecognition];
1422 else [ILTFnameR setStringValue:@""];
1423 if(EQ[clickIndexEQ].nameID) [ILTFnameID setStringValue:EQ[clickIndexEQ].nameID];
1424 else [ILTFnameID setStringValue:@""];
1425 [ILTFweight setDoubleValue:EQ[clickIndexEQ].Weight];
1426 [ILTFprice setDoubleValue:EQ[clickIndexEQ].price];
1427 [ILTFMOV setIntValue:EQ[clickIndexEQ].MOV];
1428 [ILTFHP setDoubleValue:EQ[clickIndexEQ].HP];
1429 [ILTFMP setDoubleValue:EQ[clickIndexEQ].MP];
1430 [ILTFAP setDoubleValue:EQ[clickIndexEQ].AP];
1431 [ILTFWT setDoubleValue:EQ[clickIndexEQ].WT];
1433 [ILTFSTR setDoubleValue:EQ[clickIndexEQ].STR];
1434 [ILTFVIT setDoubleValue:EQ[clickIndexEQ].VIT];
1435 [ILTFAGI setDoubleValue:EQ[clickIndexEQ].AGI];
1436 [ILTFDEX setDoubleValue:EQ[clickIndexEQ].DEX];
1437 [ILTFMEN setDoubleValue:EQ[clickIndexEQ].MEN];
1438 [ILTFINT setDoubleValue:EQ[clickIndexEQ].INT];
1439 [ILTFLUK setDoubleValue:EQ[clickIndexEQ].LUK];
1441 [ILTFpSTR setDoubleValue:EQ[clickIndexEQ].pSTR];
1442 [ILTFpVIT setDoubleValue:EQ[clickIndexEQ].pVIT];
1443 [ILTFpAGI setDoubleValue:EQ[clickIndexEQ].pAGI];
1444 [ILTFpDEX setDoubleValue:EQ[clickIndexEQ].pDEX];
1445 [ILTFpMEN setDoubleValue:EQ[clickIndexEQ].pMEN];
1446 [ILTFpINT setDoubleValue:EQ[clickIndexEQ].pINT];
1447 [ILTFpLUK setDoubleValue:EQ[clickIndexEQ].pLUK];
1449 [ILTFblow setIntValue:EQ[clickIndexEQ].R.blow];
1450 [ILTFslash setIntValue:EQ[clickIndexEQ].R.slash];
1451 [ILTFstub setIntValue:EQ[clickIndexEQ].R.stub];
1452 [ILTFarrow setIntValue:EQ[clickIndexEQ].R.arrow];
1453 [ILTFgun setIntValue:EQ[clickIndexEQ].R.gun];
1454 [ILTFshell setIntValue:EQ[clickIndexEQ].R.shell];
1455 [ILTFparalysis setIntValue:EQ[clickIndexEQ].R.paralysis];
1456 [ILTFpoison setIntValue:EQ[clickIndexEQ].R.poison];
1457 [ILTFcharm setIntValue:EQ[clickIndexEQ].R.charm];
1458 [ILTFconfusion setIntValue:EQ[clickIndexEQ].R.confusion];
1459 [ILTFsleep setIntValue:EQ[clickIndexEQ].R.sleep];
1460 [ILTFsilent setIntValue:EQ[clickIndexEQ].R.silent];
1462 [ILTFflame setIntValue:EQ[clickIndexEQ].R.flame];
1463 [ILTFcold setIntValue:EQ[clickIndexEQ].R.cold];
1464 [ILTFelectoric setIntValue:EQ[clickIndexEQ].R.electoric];
1465 [ILTFair setIntValue:EQ[clickIndexEQ].R.air];
1466 [ILTFwater setIntValue:EQ[clickIndexEQ].R.water];
1467 [ILTFgas setIntValue:EQ[clickIndexEQ].R.gas];
1468 [ILTFholy setIntValue:EQ[clickIndexEQ].R.holy];
1469 [ILTFdark setIntValue:EQ[clickIndexEQ].R.dark];
1470 [ILTFexplosion setIntValue:EQ[clickIndexEQ].R.explosion];
1471 [ILTFblood setIntValue:EQ[clickIndexEQ].R.blood];
1473 [ILTFrecHP setIntValue:EQ[clickIndexEQ].recHP];
1474 [ILTFrecHPp setIntValue:EQ[clickIndexEQ].recpHP];
1475 [ILTFrecMP setIntValue:EQ[clickIndexEQ].recMP];
1476 [ILTFrecMPp setIntValue:EQ[clickIndexEQ].recpMP];
1477 if(EQ[clickIndexEQ].comment) [ILTFcomment setStringValue:EQ[clickIndexEQ].comment];
1478 else [ILTFcomment setStringValue:@""];
1480 [ILPUBtype selectItemAtIndex:EQ[clickIndexEQ].type];
1482 UCLDpoint.x = [UCLPanelEquipList frame].origin.x + 0;
1483 UCLDpoint.y = [UCLPanelEquipList frame].origin.y + 0;
1484 [UCLPanelEquipDetail setFrameOrigin:UCLDpoint];
1485 [UCLPanelEquipDetail makeKeyAndOrderFront:nil];
1488 -(IBAction)saveIL:(id)sender{
1490 EQ[clickIndexEQ].name = [[ILTFname stringValue] retain];
1491 EQ[clickIndexEQ].nameRecognition = [[ILTFnameR stringValue] retain];
1492 EQ[clickIndexEQ].nameID = [[ILTFnameID stringValue] retain];
1494 EQ[clickIndexEQ].Weight = [ILTFweight doubleValue];
1495 EQ[clickIndexEQ].price = [ILTFprice doubleValue];
1496 EQ[clickIndexEQ].MOV = [ILTFMOV intValue];
1497 EQ[clickIndexEQ].HP = [ILTFHP doubleValue];
1498 EQ[clickIndexEQ].MP = [ILTFMP doubleValue];
1499 EQ[clickIndexEQ].AP = [ILTFAP doubleValue];
1500 EQ[clickIndexEQ].WT = [ILTFWT doubleValue];
1502 EQ[clickIndexEQ].STR = [ILTFSTR doubleValue];
1503 EQ[clickIndexEQ].VIT = [ILTFVIT doubleValue];
1504 EQ[clickIndexEQ].AGI = [ILTFAGI doubleValue];
1505 EQ[clickIndexEQ].DEX = [ILTFDEX doubleValue];
1506 EQ[clickIndexEQ].MEN = [ILTFMEN doubleValue];
1507 EQ[clickIndexEQ].INT = [ILTFINT doubleValue];
1508 EQ[clickIndexEQ].LUK = [ILTFLUK doubleValue];
1510 EQ[clickIndexEQ].pSTR = [ILTFpSTR doubleValue];
1511 EQ[clickIndexEQ].pVIT = [ILTFpVIT doubleValue];
1512 EQ[clickIndexEQ].pAGI = [ILTFpAGI doubleValue];
1513 EQ[clickIndexEQ].pDEX = [ILTFpDEX doubleValue];
1514 EQ[clickIndexEQ].pMEN = [ILTFpMEN doubleValue];
1515 EQ[clickIndexEQ].pINT = [ILTFpINT doubleValue];
1516 EQ[clickIndexEQ].pLUK = [ILTFpLUK doubleValue];
1518 EQ[clickIndexEQ].R.blow = [ILTFblow intValue];
1519 EQ[clickIndexEQ].R.slash = [ILTFslash intValue];
1520 EQ[clickIndexEQ].R.stub = [ILTFstub intValue];
1521 EQ[clickIndexEQ].R.arrow = [ILTFarrow intValue];
1522 EQ[clickIndexEQ].R.gun = [ILTFgun intValue];
1523 EQ[clickIndexEQ].R.shell = [ILTFshell intValue];
1524 EQ[clickIndexEQ].R.paralysis = [ILTFparalysis intValue];
1525 EQ[clickIndexEQ].R.poison = [ILTFpoison intValue];
1526 EQ[clickIndexEQ].R.charm = [ILTFcharm intValue];
1527 EQ[clickIndexEQ].R.confusion = [ILTFconfusion intValue];
1528 EQ[clickIndexEQ].R.sleep = [ILTFsleep intValue];
1529 EQ[clickIndexEQ].R.silent = [ILTFsilent intValue];
1531 EQ[clickIndexEQ].R.flame = [ILTFflame intValue];
1532 EQ[clickIndexEQ].R.cold = [ILTFcold intValue];
1533 EQ[clickIndexEQ].R.electoric = [ILTFelectoric intValue];
1534 EQ[clickIndexEQ].R.air = [ILTFair intValue];
1535 EQ[clickIndexEQ].R.water = [ILTFwater intValue];
1536 EQ[clickIndexEQ].R.gas = [ILTFgas intValue];
1537 EQ[clickIndexEQ].R.holy = [ILTFholy intValue];
1538 EQ[clickIndexEQ].R.dark = [ILTFdark intValue];
1539 EQ[clickIndexEQ].R.explosion = [ILTFexplosion intValue];
1540 EQ[clickIndexEQ].R.blood = [ILTFblood intValue];
1542 EQ[clickIndexEQ].recHP = [ILTFrecHP intValue];
1543 EQ[clickIndexEQ].recpHP = [ILTFrecHPp intValue];
1544 EQ[clickIndexEQ].recMP = [ILTFrecMP intValue];
1545 EQ[clickIndexEQ].recpMP = [ILTFrecMPp intValue];
1546 EQ[clickIndexEQ].comment = [[ILTFcomment stringValue] retain];
1548 EQ[clickIndexEQ].type = (int)[ILPUBtype indexOfSelectedItem];
1550 [equipListAC setValue:[NSString stringWithFormat:@"%@", EQ[clickIndexEQ].name] forKeyPath:@"selection.name"];
1552 NSString *str = @"";
1554 if(EQ[clickIndexEQ].HP != 0)
1555 str = [str stringByAppendingFormat:@"HP %d ", (int)EQ[clickIndexEQ].HP];
1556 if(EQ[clickIndexEQ].MP != 0)
1557 str = [str stringByAppendingFormat:@"MP %d ", (int)EQ[clickIndexEQ].MP];
1558 if(EQ[clickIndexEQ].STR != 0)
1559 str = [str stringByAppendingFormat:@"STR %d ", (int)EQ[clickIndexEQ].STR];
1560 if(EQ[clickIndexEQ].VIT != 0)
1561 str = [str stringByAppendingFormat:@"VIT %d ", (int)EQ[clickIndexEQ].VIT];
1562 if(EQ[clickIndexEQ].AGI != 0)
1563 str = [str stringByAppendingFormat:@"AGI %d ", (int)EQ[clickIndexEQ].AGI];
1564 if(EQ[clickIndexEQ].DEX != 0)
1565 str = [str stringByAppendingFormat:@"DEX %d ", (int)EQ[clickIndexEQ].DEX];
1566 if(EQ[clickIndexEQ].MEN != 0)
1567 str = [str stringByAppendingFormat:@"MEN %d ", (int)EQ[clickIndexEQ].MEN];
1568 if(EQ[clickIndexEQ].INT != 0)
1569 str = [str stringByAppendingFormat:@"INT %d ", (int)EQ[clickIndexEQ].INT];
1570 if(EQ[clickIndexEQ].LUK != 0)
1571 str = [str stringByAppendingFormat:@"LUK %d ", (int)EQ[clickIndexEQ].LUK];
1572 if(EQ[clickIndexEQ].Weight != 0)
1573 str = [str stringByAppendingFormat:@"重さ %d ", (int)EQ[clickIndexEQ].Weight];
1575 [equipListAC setValue:[NSString stringWithFormat:@"%@", str] forKeyPath:@"selection.memo"];
1579 [UCLPanelEquipDetail close];
1584 NSString *directoryPath;
1586 directoryPath = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
1587 [[NSFileManager defaultManager] changeCurrentDirectoryPath:directoryPath];
1589 for (int i=0; i<eItemNum; i++) {
1590 NSString *fdata = @"data/ItemList/ILdata";
1591 fdata = [fdata stringByAppendingFormat:@"%d.txt", i+1];
1593 NSString *fileData = @"";
1595 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", EQ[i].name]] stringByAppendingString:@"\n"];
1596 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", EQ[i].nameRecognition]] stringByAppendingString:@"\n"];
1597 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", EQ[i].nameID]] stringByAppendingString:@"\n"];
1600 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].price]] stringByAppendingString:@","];
1601 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].Weight]] stringByAppendingString:@","];
1602 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].type]] stringByAppendingString:@"\n"];
1604 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].HP]] stringByAppendingString:@","];
1605 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].MP]] stringByAppendingString:@","];
1606 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].AP]] stringByAppendingString:@","];
1607 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].WT]] stringByAppendingString:@","];
1608 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].MOV]] stringByAppendingString:@"\n"];
1610 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].STR]] stringByAppendingString:@","];
1611 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].VIT]] stringByAppendingString:@","];
1612 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].AGI]] stringByAppendingString:@","];
1613 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].DEX]] stringByAppendingString:@","];
1614 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].MEN]] stringByAppendingString:@","];
1615 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].INT]] stringByAppendingString:@","];
1616 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].LUK]] stringByAppendingString:@"\n"];
1618 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].pSTR]] stringByAppendingString:@","];
1619 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].pVIT]] stringByAppendingString:@","];
1620 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].pAGI]] stringByAppendingString:@","];
1621 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].pDEX]] stringByAppendingString:@","];
1622 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].pMEN]] stringByAppendingString:@","];
1623 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].pINT]] stringByAppendingString:@","];
1624 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].pLUK]] stringByAppendingString:@"\n"];
1626 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].recHP]] stringByAppendingString:@","];
1627 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].recpHP]] stringByAppendingString:@","];
1628 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].recMP]] stringByAppendingString:@","];
1629 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].recpMP]] stringByAppendingString:@"\n"];
1631 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.blow]] stringByAppendingString:@","];
1632 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.slash]] stringByAppendingString:@","];
1633 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.stub]] stringByAppendingString:@","];
1634 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.arrow]] stringByAppendingString:@","];
1635 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.gun]] stringByAppendingString:@","];
1636 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.shell]] stringByAppendingString:@","];
1637 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.paralysis]] stringByAppendingString:@","];
1638 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.poison]] stringByAppendingString:@","];
1639 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.charm]] stringByAppendingString:@","];
1640 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.confusion]] stringByAppendingString:@","];
1641 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.sleep]] stringByAppendingString:@","];
1642 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.silent]] stringByAppendingString:@"\n"];
1644 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.flame]] stringByAppendingString:@","];
1645 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.cold]] stringByAppendingString:@","];
1646 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.electoric]] stringByAppendingString:@","];
1647 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.air]] stringByAppendingString:@","];
1648 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.water]] stringByAppendingString:@","];
1649 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.gas]] stringByAppendingString:@","];
1650 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.holy]] stringByAppendingString:@","];
1651 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.dark]] stringByAppendingString:@","];
1652 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.explosion]] stringByAppendingString:@","];
1653 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].R.blood]] stringByAppendingString:@"\n"];
1655 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", EQ[i].comment]] stringByAppendingString:@"\n"];
1656 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@"----\n"]];
1658 [fileData writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
1665 -(IBAction)canceIL:(id)sender{
1666 [UCLPanelEquipDetail close];
1669 -(void)ClickAL:(id)sender{
1670 clickedRowAT = (int)[attackListTV clickedRow];
1673 -(void)doubleClickAL:(id)sender{
1677 if(clickIndexEQ < 0) return;
1678 atkTop = EQ[clickIndexEQ].A;
1680 clickIndexAL = [attackListTV clickedRow];
1682 [self willChangeValueForKey:@"damageListMA"];
1683 [damageListMA removeAllObjects];
1684 [self didChangeValueForKey:@"damageListMA"];
1686 [self willChangeValueForKey:@"hitListMA"];
1687 [hitListMA removeAllObjects];
1688 [self didChangeValueForKey:@"hitListMA"];
1690 if(clickIndexAL <= -1) return;
1692 for(int i = 0;i < clickIndexAL;i++){
1693 EQ[clickIndexEQ].A = EQ[clickIndexEQ].A->next;
1696 [ALTFname setStringValue:EQ[clickIndexEQ].A->name];
1697 [ALTFrangeA setIntValue:EQ[clickIndexEQ].A->rangeA];
1698 [ALTFrangeB setIntValue:EQ[clickIndexEQ].A->rangeB];
1699 [ALTFextend setIntValue:EQ[clickIndexEQ].A->extent];
1701 [ALTFtrigger setIntValue:EQ[clickIndexEQ].A->trig];
1702 [ALTFmelee setIntValue:EQ[clickIndexEQ].A->melee];
1703 [ALTFpass setIntValue:EQ[clickIndexEQ].A->P];
1704 [ALTFdmgExtent setIntValue:EQ[clickIndexEQ].A->dmgExtend];
1705 [ALPUBwType selectItemAtIndex:EQ[clickIndexEQ].A->type];
1706 [ALTFimagine setIntValue:EQ[clickIndexEQ].A->imagine];
1712 [ALPUBtype removeAllItems];
1713 [ALPUBtype addItemWithTitle:@"攻撃力"];
1714 [ALPUBtype addItemWithTitle:@"防御力"];
1715 [ALPUBtype addItemWithTitle:@"命中値"];
1716 [ALPUBtype addItemWithTitle:@"回避値"];
1717 [ALPUBtype addItemWithTitle:@"演算力"];
1718 [ALPUBtype addItemWithTitle:@"無修正"];
1720 [ALPUBcost removeAllItems];
1721 [ALPUBcost addItemWithTitle:@"MP"];
1722 [ALPUBcost addItemWithTitle:@"AP"];
1723 [ALPUBcost addItemWithTitle:@"HP"];
1724 [ALPUBcost selectItemAtIndex:EQ[clickIndexEQ].A->costType];
1725 if(EQ[clickIndexEQ].A->costType == 0){
1726 [ALTFcost setIntValue:EQ[clickIndexEQ].A->MP];
1727 [ALTFcostP setIntValue:EQ[clickIndexEQ].A->pMP];
1728 }else if(EQ[clickIndexEQ].A->costType == 1){
1729 [ALTFcost setIntValue:EQ[clickIndexEQ].A->AP];
1730 [ALTFcostP setIntValue:EQ[clickIndexEQ].A->pAP];
1731 }else if(EQ[clickIndexEQ].A->costType == 2){
1732 [ALTFcost setIntValue:EQ[clickIndexEQ].A->HP];
1733 [ALTFcostP setIntValue:EQ[clickIndexEQ].A->pHP];
1736 [ALTFbullet setIntValue:EQ[clickIndexEQ].A->bullet];
1737 [ALTFhitCount setIntValue:EQ[clickIndexEQ].A->hitCount];
1738 [ALTFsuccessRate setIntValue:EQ[clickIndexEQ].A->successRate];
1739 [ALTFvigor setIntValue:EQ[clickIndexEQ].A->vigor];
1740 [ALTFhitRate setIntValue:EQ[clickIndexEQ].A->hitPercent];
1742 [ALPUBriku selectItemAtIndex:EQ[clickIndexEQ].A->riku];
1743 [ALPUBchu selectItemAtIndex:EQ[clickIndexEQ].A->chu];
1744 [ALPUBumi selectItemAtIndex:EQ[clickIndexEQ].A->umi];
1745 [ALPUBsora selectItemAtIndex:EQ[clickIndexEQ].A->sora];
1747 [ALTFcSupply setIntValue:EQ[clickIndexEQ].A->cSupply];
1748 [ALTFcFood setIntValue:EQ[clickIndexEQ].A->cFood];
1749 [ALTFcMoney setIntValue:EQ[clickIndexEQ].A->cMoney];
1751 [ALTFcmd setStringValue:EQ[clickIndexEQ].A->cmd];
1752 if(EQ[clickIndexEQ].A->msg != NULL) [ALTFmsg setStringValue:EQ[clickIndexEQ].A->msg];
1754 DAMAGE *Dtop = EQ[clickIndexEQ].A->D;
1757 NSMutableDictionary* dict = [NSMutableDictionary new];
1758 if(!EQ[clickIndexEQ].A->D){
1759 [dict setValue:[NSString stringWithFormat:@""] forKey:@"count"];
1761 else if(EQ[clickIndexEQ].A->D->count > 0 || EQ[clickIndexEQ].A->D->pCount > 0){
1762 if(EQ[clickIndexEQ].A->D->type == 0)
1763 [dict setValue:[NSString stringWithFormat:@"攻%g+%g%", EQ[clickIndexEQ].A->D->count, EQ[clickIndexEQ].A->D->pCount] forKey:@"count"];
1764 if(EQ[clickIndexEQ].A->D->type == 1)
1765 [dict setValue:[NSString stringWithFormat:@"防%g+%g%", EQ[clickIndexEQ].A->D->count, EQ[clickIndexEQ].A->D->pCount] forKey:@"count"];
1766 if(EQ[clickIndexEQ].A->D->type == 2)
1767 [dict setValue:[NSString stringWithFormat:@"命%g+%g%", EQ[clickIndexEQ].A->D->count, EQ[clickIndexEQ].A->D->pCount] forKey:@"count"];
1768 if(EQ[clickIndexEQ].A->D->type == 3)
1769 [dict setValue:[NSString stringWithFormat:@"回%g+%g%", EQ[clickIndexEQ].A->D->count, EQ[clickIndexEQ].A->D->pCount] forKey:@"count"];
1770 if(EQ[clickIndexEQ].A->D->type == 4)
1771 [dict setValue:[NSString stringWithFormat:@"演%g+%g%", EQ[clickIndexEQ].A->D->count, EQ[clickIndexEQ].A->D->pCount] forKey:@"count"];
1772 if(EQ[clickIndexEQ].A->D->type == 5)
1773 [dict setValue:[NSString stringWithFormat:@"会%g%g%", EQ[clickIndexEQ].A->D->count, EQ[clickIndexEQ].A->D->pCount] forKey:@"count"];
1777 if(EQ[clickIndexEQ].A->D){
1778 if(EQ[clickIndexEQ].A->D->sort == 0) str = [NSString stringWithFormat:@"ダ・"];
1779 if(EQ[clickIndexEQ].A->D->sort == 1) str = [NSString stringWithFormat:@"回・"];
1780 if(EQ[clickIndexEQ].A->D->sort == 2) str = [NSString stringWithFormat:@"復・"];
1781 if(EQ[clickIndexEQ].A->D->sort == 3) str = [NSString stringWithFormat:@"減・"];
1782 if(EQ[clickIndexEQ].A->D->sort == 4) str = [NSString stringWithFormat:@"増・"];
1783 if(EQ[clickIndexEQ].A->D->sort == 5) str = [NSString stringWithFormat:@"毒・"];
1784 if(EQ[clickIndexEQ].A->D->sort == 6) str = [NSString stringWithFormat:@"睡・"];
1785 if(EQ[clickIndexEQ].A->D->sort == 7) str = [NSString stringWithFormat:@"混・"];
1786 if(EQ[clickIndexEQ].A->D->sort == 8) str = [NSString stringWithFormat:@"麻・"];
1787 if(EQ[clickIndexEQ].A->D->sort == 9) str = [NSString stringWithFormat:@"沈・"];
1788 if(EQ[clickIndexEQ].A->D->sort == 10) str = [NSString stringWithFormat:@"魅・"];
1790 if(EQ[clickIndexEQ].A->D->seed == 0) str = [str stringByAppendingFormat:@"打撃"];
1791 if(EQ[clickIndexEQ].A->D->seed == 1) str = [str stringByAppendingFormat:@"斬撃"];
1792 if(EQ[clickIndexEQ].A->D->seed == 2) str = [str stringByAppendingFormat:@"突き"];
1793 if(EQ[clickIndexEQ].A->D->seed == 3) str = [str stringByAppendingFormat:@"射手"];
1794 if(EQ[clickIndexEQ].A->D->seed == 4) str = [str stringByAppendingFormat:@"銃撃"];
1795 if(EQ[clickIndexEQ].A->D->seed == 5) str = [str stringByAppendingFormat:@"砲撃"];
1796 if(EQ[clickIndexEQ].A->D->seed == 6) str = [str stringByAppendingFormat:@"火炎"];
1797 if(EQ[clickIndexEQ].A->D->seed == 7) str = [str stringByAppendingFormat:@"冷気"];
1798 if(EQ[clickIndexEQ].A->D->seed == 8) str = [str stringByAppendingFormat:@"電撃"];
1799 if(EQ[clickIndexEQ].A->D->seed == 9) str = [str stringByAppendingFormat:@"風圧"];
1800 if(EQ[clickIndexEQ].A->D->seed == 10) str = [str stringByAppendingFormat:@"流水"];
1801 if(EQ[clickIndexEQ].A->D->seed == 11) str = [str stringByAppendingFormat:@"ガス"];
1802 if(EQ[clickIndexEQ].A->D->seed == 12) str = [str stringByAppendingFormat:@"神聖"];
1803 if(EQ[clickIndexEQ].A->D->seed == 13) str = [str stringByAppendingFormat:@"暗黒"];
1804 if(EQ[clickIndexEQ].A->D->seed == 14) str = [str stringByAppendingFormat:@"爆撃"];
1805 if(EQ[clickIndexEQ].A->D->seed == 15) str = [str stringByAppendingFormat:@"流血"];
1807 if(EQ[clickIndexEQ].A->D->fix == 0) str = [str stringByAppendingFormat:@"通"];
1808 if(EQ[clickIndexEQ].A->D->fix == 1) str = [str stringByAppendingFormat:@"弓"];
1809 if(EQ[clickIndexEQ].A->D->fix == 2) str = [str stringByAppendingFormat:@"銃"];
1811 [dict setValue:[NSString stringWithFormat:@"%@", str] forKey:@"type"];
1814 if(EQ[clickIndexEQ].A->D){
1815 if(EQ[clickIndexEQ].A->D->count <= 0 && EQ[clickIndexEQ].A->D->sort == 0)
1817 EQ[clickIndexEQ].A->D = NULL;
1820 [self willChangeValueForKey:@"damageListMA"];
1821 [damageListMA addObject:dict];
1822 [self didChangeValueForKey:@"damageListMA"];
1824 EQ[clickIndexEQ].A->D = EQ[clickIndexEQ].A->D->next;
1826 }while(EQ[clickIndexEQ].A->D != NULL);
1828 EQ[clickIndexEQ].A->D = Dtop;
1830 DMGEXTEND *Etop = EQ[clickIndexEQ].A->E;
1831 while(EQ[clickIndexEQ].A->E != NULL){
1833 NSMutableDictionary* dict = [NSMutableDictionary new];
1836 [dict setValue:[NSString stringWithFormat:@"%d", EQ[clickIndexEQ].A->E->rate] forKey:@"rate"];
1837 [dict setValue:[NSString stringWithFormat:@"%d", EQ[clickIndexEQ].A->E->atkHit] forKey:@"atkHit"];
1838 [dict setValue:[NSString stringWithFormat:@"%d", EQ[clickIndexEQ].A->E->hit] forKey:@"hit"];
1840 [self willChangeValueForKey:@"hitListMA"];
1841 [hitListMA addObject:dict];
1842 [self didChangeValueForKey:@"hitListMA"];
1844 EQ[clickIndexEQ].A->E = EQ[clickIndexEQ].A->E->next;
1847 EQ[clickIndexEQ].A->E = Etop;
1849 EQ[clickIndexEQ].A = atkTop;
1852 UCLDpoint.x = [UCLPanelAttack frame].origin.x + 0;
1853 UCLDpoint.y = [UCLPanelAttack frame].origin.y + 0;
1854 [UCLPanelAttackDetail setFrameOrigin:UCLDpoint];
1855 [UCLPanelAttackDetail makeKeyAndOrderFront:nil];
1860 if(!loadChipSideFlag){
1862 atkTop = UC[clickIndex].A;
1864 clickIndexAL = [attackListTV clickedRow];
1867 [self willChangeValueForKey:@"damageListMA"];
1868 [damageListMA removeAllObjects];
1869 [self didChangeValueForKey:@"damageListMA"];
1871 [self willChangeValueForKey:@"hitListMA"];
1872 [hitListMA removeAllObjects];
1873 [self didChangeValueForKey:@"hitListMA"];
1875 if(clickIndexAL <= -1) return;
1877 NSLog(@"%@, %ld", atkTop->name, clickIndexAL);
1879 for(int i = 0;i < clickIndexAL;i++){
1880 UC[clickIndex].A = UC[clickIndex].A->next;
1883 [ALTFname setStringValue:UC[clickIndex].A->name];
1884 [ALTFrangeA setIntValue:UC[clickIndex].A->rangeA];
1885 [ALTFrangeB setIntValue:UC[clickIndex].A->rangeB];
1886 [ALTFextend setIntValue:UC[clickIndex].A->extent];
1888 [ALTFtrigger setIntValue:UC[clickIndex].A->trig];
1889 [ALTFmelee setIntValue:UC[clickIndex].A->melee];
1890 [ALTFpass setIntValue:UC[clickIndex].A->P];
1891 [ALTFdmgExtent setIntValue:UC[clickIndex].A->dmgExtend];
1892 [ALPUBwType selectItemAtIndex:UC[clickIndex].A->type];
1893 [ALTFimagine setIntValue:UC[clickIndex].A->imagine];
1897 [ALPUBtype removeAllItems];
1898 [ALPUBtype addItemWithTitle:@"攻撃力"];
1899 [ALPUBtype addItemWithTitle:@"防御力"];
1900 [ALPUBtype addItemWithTitle:@"命中値"];
1901 [ALPUBtype addItemWithTitle:@"回避値"];
1902 [ALPUBtype addItemWithTitle:@"演算力"];
1903 [ALPUBtype addItemWithTitle:@"無修正"];
1905 [ALPUBcost removeAllItems];
1906 [ALPUBcost addItemWithTitle:@"MP"];
1907 [ALPUBcost addItemWithTitle:@"AP"];
1908 [ALPUBcost addItemWithTitle:@"HP"];
1909 [ALPUBcost selectItemAtIndex:UC[clickIndex].A->costType];
1910 if(UC[clickIndex].A->costType == 0){
1911 [ALTFcost setIntValue:UC[clickIndex].A->MP];
1912 [ALTFcostP setIntValue:UC[clickIndex].A->pMP];
1913 }else if(UC[clickIndex].A->costType == 1){
1914 [ALTFcost setIntValue:UC[clickIndex].A->AP];
1915 [ALTFcostP setIntValue:UC[clickIndex].A->pAP];
1916 }else if(UC[clickIndex].A->costType == 2){
1917 [ALTFcost setIntValue:UC[clickIndex].A->HP];
1918 [ALTFcostP setIntValue:UC[clickIndex].A->pHP];
1921 [ALTFbullet setIntValue:UC[clickIndex].A->bullet];
1922 [ALTFhitCount setIntValue:UC[clickIndex].A->hitCount];
1923 [ALTFsuccessRate setIntValue:UC[clickIndex].A->successRate];
1924 [ALTFvigor setIntValue:UC[clickIndex].A->vigor];
1925 [ALTFhitRate setIntValue:UC[clickIndex].A->hitPercent];
1927 [ALPUBriku selectItemAtIndex:UC[clickIndex].A->riku];
1928 [ALPUBchu selectItemAtIndex:UC[clickIndex].A->chu];
1929 [ALPUBumi selectItemAtIndex:UC[clickIndex].A->umi];
1930 [ALPUBsora selectItemAtIndex:UC[clickIndex].A->sora];
1932 [ALTFcSupply setIntValue:UC[clickIndex].A->cSupply];
1933 [ALTFcFood setIntValue:UC[clickIndex].A->cFood];
1934 [ALTFcMoney setIntValue:UC[clickIndex].A->cMoney];
1936 [ALTFcmd setStringValue:UC[clickIndex].A->cmd];
1937 if(UC[clickIndex].A->msg != NULL)
1938 [ALTFmsg setStringValue:UC[clickIndex].A->msg];
1940 DAMAGE *Dtop = UC[clickIndex].A->D;
1943 NSMutableDictionary* dict = [NSMutableDictionary new];
1944 if(!UC[clickIndex].A->D){
1945 [dict setValue:[NSString stringWithFormat:@""] forKey:@"count"];
1947 else if(UC[clickIndex].A->D->count > 0 || UC[clickIndex].A->D->pCount > 0){
1948 if(UC[clickIndex].A->D->type == 0)
1949 [dict setValue:[NSString stringWithFormat:@"攻%g+%g%", UC[clickIndex].A->D->count, UC[clickIndex].A->D->pCount] forKey:@"count"];
1950 if(UC[clickIndex].A->D->type == 1)
1951 [dict setValue:[NSString stringWithFormat:@"防%g+%g%", UC[clickIndex].A->D->count, UC[clickIndex].A->D->pCount] forKey:@"count"];
1952 if(UC[clickIndex].A->D->type == 2)
1953 [dict setValue:[NSString stringWithFormat:@"命%g+%g%", UC[clickIndex].A->D->count, UC[clickIndex].A->D->pCount] forKey:@"count"];
1954 if(UC[clickIndex].A->D->type == 3)
1955 [dict setValue:[NSString stringWithFormat:@"回%g+%g%", UC[clickIndex].A->D->count, UC[clickIndex].A->D->pCount] forKey:@"count"];
1956 if(UC[clickIndex].A->D->type == 4)
1957 [dict setValue:[NSString stringWithFormat:@"演%g+%g%", UC[clickIndex].A->D->count, UC[clickIndex].A->D->pCount] forKey:@"count"];
1958 if(UC[clickIndex].A->D->type == 5)
1959 [dict setValue:[NSString stringWithFormat:@"会%g%g%", UC[clickIndex].A->D->count, UC[clickIndex].A->D->pCount] forKey:@"count"];
1963 if(UC[clickIndex].A->D){
1964 if(UC[clickIndex].A->D->sort == 0) str = [NSString stringWithFormat:@"ダ・"];
1965 if(UC[clickIndex].A->D->sort == 1) str = [NSString stringWithFormat:@"回・"];
1966 if(UC[clickIndex].A->D->sort == 2) str = [NSString stringWithFormat:@"復・"];
1967 if(UC[clickIndex].A->D->sort == 3) str = [NSString stringWithFormat:@"減・"];
1968 if(UC[clickIndex].A->D->sort == 4) str = [NSString stringWithFormat:@"増・"];
1969 if(UC[clickIndex].A->D->sort == 5) str = [NSString stringWithFormat:@"毒・"];
1970 if(UC[clickIndex].A->D->sort == 6) str = [NSString stringWithFormat:@"睡・"];
1971 if(UC[clickIndex].A->D->sort == 7) str = [NSString stringWithFormat:@"混・"];
1972 if(UC[clickIndex].A->D->sort == 8) str = [NSString stringWithFormat:@"麻・"];
1973 if(UC[clickIndex].A->D->sort == 9) str = [NSString stringWithFormat:@"沈・"];
1974 if(UC[clickIndex].A->D->sort == 10) str = [NSString stringWithFormat:@"魅・"];
1976 if(UC[clickIndex].A->D->seed == 0) str = [str stringByAppendingFormat:@"打撃"];
1977 if(UC[clickIndex].A->D->seed == 1) str = [str stringByAppendingFormat:@"斬撃"];
1978 if(UC[clickIndex].A->D->seed == 2) str = [str stringByAppendingFormat:@"突き"];
1979 if(UC[clickIndex].A->D->seed == 3) str = [str stringByAppendingFormat:@"射手"];
1980 if(UC[clickIndex].A->D->seed == 4) str = [str stringByAppendingFormat:@"銃撃"];
1981 if(UC[clickIndex].A->D->seed == 5) str = [str stringByAppendingFormat:@"砲撃"];
1982 if(UC[clickIndex].A->D->seed == 6) str = [str stringByAppendingFormat:@"火炎"];
1983 if(UC[clickIndex].A->D->seed == 7) str = [str stringByAppendingFormat:@"冷気"];
1984 if(UC[clickIndex].A->D->seed == 8) str = [str stringByAppendingFormat:@"電撃"];
1985 if(UC[clickIndex].A->D->seed == 9) str = [str stringByAppendingFormat:@"風圧"];
1986 if(UC[clickIndex].A->D->seed == 10) str = [str stringByAppendingFormat:@"流水"];
1987 if(UC[clickIndex].A->D->seed == 11) str = [str stringByAppendingFormat:@"ガス"];
1988 if(UC[clickIndex].A->D->seed == 12) str = [str stringByAppendingFormat:@"神聖"];
1989 if(UC[clickIndex].A->D->seed == 13) str = [str stringByAppendingFormat:@"暗黒"];
1990 if(UC[clickIndex].A->D->seed == 14) str = [str stringByAppendingFormat:@"爆撃"];
1991 if(UC[clickIndex].A->D->seed == 15) str = [str stringByAppendingFormat:@"流血"];
1993 if(UC[clickIndex].A->D->fix == 0) str = [str stringByAppendingFormat:@"通"];
1994 if(UC[clickIndex].A->D->fix == 1) str = [str stringByAppendingFormat:@"弓"];
1995 if(UC[clickIndex].A->D->fix == 2) str = [str stringByAppendingFormat:@"銃"];
1997 [dict setValue:[NSString stringWithFormat:@"%@", str] forKey:@"type"];
2000 if(UC[clickIndex].A->D){
2001 if(UC[clickIndex].A->D->count <= 0 && UC[clickIndex].A->D->sort == 0)
2003 UC[clickIndex].A->D = NULL;
2006 [self willChangeValueForKey:@"damageListMA"];
2007 [damageListMA addObject:dict];
2008 [self didChangeValueForKey:@"damageListMA"];
2010 UC[clickIndex].A->D = UC[clickIndex].A->D->next;
2012 }while(UC[clickIndex].A->D != NULL);
2014 UC[clickIndex].A->D = Dtop;
2016 DMGEXTEND *Etop = UC[clickIndex].A->E;
2017 while(UC[clickIndex].A->E != NULL){
2019 NSMutableDictionary* dict = [NSMutableDictionary new];
2022 [dict setValue:[NSString stringWithFormat:@"%d", UC[clickIndex].A->E->rate] forKey:@"rate"];
2023 [dict setValue:[NSString stringWithFormat:@"%d", UC[clickIndex].A->E->atkHit] forKey:@"atkHit"];
2024 [dict setValue:[NSString stringWithFormat:@"%d", UC[clickIndex].A->E->hit] forKey:@"hit"];
2026 [self willChangeValueForKey:@"hitListMA"];
2027 [hitListMA addObject:dict];
2028 [self didChangeValueForKey:@"hitListMA"];
2030 UC[clickIndex].A->E = UC[clickIndex].A->E->next;
2033 UC[clickIndex].A->E = Etop;
2035 UC[clickIndex].A = atkTop;
2042 clickIndexAL = [attackListTV clickedRow];
2044 [self willChangeValueForKey:@"damageListMA"];
2045 [damageListMA removeAllObjects];
2046 [self didChangeValueForKey:@"damageListMA"];
2048 [self willChangeValueForKey:@"hitListMA"];
2049 [hitListMA removeAllObjects];
2050 [self didChangeValueForKey:@"hitListMA"];
2052 if(clickIndexAL <= -1) return;
2054 for(int i = 0;i < clickIndexAL;i++){
2055 LC[cil].A = LC[cil].A->next;
2058 [ALTFname setStringValue:LC[cil].A->name];
2059 [ALTFrangeA setIntValue:LC[cil].A->rangeA];
2060 [ALTFrangeB setIntValue:LC[cil].A->rangeB];
2061 [ALTFextend setIntValue:LC[cil].A->extent];
2063 [ALTFtrigger setIntValue:LC[cil].A->trig];
2064 [ALTFmelee setIntValue:LC[cil].A->melee];
2065 [ALTFpass setIntValue:LC[cil].A->P];
2066 [ALTFdmgExtent setIntValue:LC[cil].A->dmgExtend];
2067 [ALPUBwType selectItemAtIndex:LC[cil].A->type];
2068 [ALTFimagine setIntValue:LC[cil].A->imagine];
2071 [ALPUBtype removeAllItems];
2072 [ALPUBtype addItemWithTitle:@"攻撃力"];
2074 [ALPUBcost removeAllItems];
2075 [ALPUBcost addItemWithTitle:@"EN"];
2076 [ALPUBcost addItemWithTitle:@"HP"];
2077 [ALPUBcost selectItemAtIndex:LC[cil].A->costType];
2079 if(LC[cil].A->costType == 0){
2080 [ALTFcost setIntValue:LC[cil].A->EN];
2081 [ALTFcostP setIntValue:LC[cil].A->pEN];
2083 if(LC[cil].A->costType == 1){
2084 [ALTFcost setIntValue:LC[cil].A->HP];
2085 [ALTFcostP setIntValue:LC[cil].A->pHP];
2088 [ALTFbullet setIntValue:LC[cil].A->bullet];
2089 [ALTFhitCount setIntValue:LC[cil].A->hitCount];
2090 [ALTFsuccessRate setIntValue:LC[cil].A->successRate];
2091 [ALTFvigor setIntValue:LC[cil].A->vigor];
2092 [ALTFhitRate setIntValue:LC[cil].A->hitPercent];
2094 [ALPUBriku selectItemAtIndex:LC[cil].A->riku];
2095 [ALPUBchu selectItemAtIndex:LC[cil].A->chu];
2096 [ALPUBumi selectItemAtIndex:LC[cil].A->umi];
2097 [ALPUBsora selectItemAtIndex:LC[cil].A->sora];
2099 [ALTFcSupply setIntValue:LC[cil].A->cSupply];
2100 [ALTFcFood setIntValue:LC[cil].A->cFood];
2101 [ALTFcMoney setIntValue:LC[cil].A->cMoney];
2103 [ALTFcmd setStringValue:LC[cil].A->cmd];
2104 if(LC[cil].A->msg != NULL) [ALTFmsg setStringValue:LC[cil].A->msg];
2106 DAMAGE *Dtop = LC[cil].A->D;
2109 NSMutableDictionary* dict = [NSMutableDictionary new];
2111 [dict setValue:[NSString stringWithFormat:@""] forKey:@"count"];
2113 else if(LC[cil].A->D->count > 0 || LC[cil].A->D->pCount > 0){
2114 [dict setValue:[NSString stringWithFormat:@"攻%g+%g%", LC[cil].A->D->count, LC[cil].A->D->pCount] forKey:@"count"];
2119 if(LC[cil].A->D->sort == 0) str = [NSString stringWithFormat:@"ダ・"];
2120 if(LC[cil].A->D->sort == 1) str = [NSString stringWithFormat:@"回・"];
2121 if(LC[cil].A->D->sort == 2) str = [NSString stringWithFormat:@"復・"];
2122 if(LC[cil].A->D->sort == 3) str = [NSString stringWithFormat:@"減・"];
2123 if(LC[cil].A->D->sort == 4) str = [NSString stringWithFormat:@"増・"];
2124 if(LC[cil].A->D->sort == 5) str = [NSString stringWithFormat:@"毒・"];
2125 if(LC[cil].A->D->sort == 6) str = [NSString stringWithFormat:@"睡・"];
2126 if(LC[cil].A->D->sort == 7) str = [NSString stringWithFormat:@"混・"];
2127 if(LC[cil].A->D->sort == 8) str = [NSString stringWithFormat:@"麻・"];
2128 if(LC[cil].A->D->sort == 9) str = [NSString stringWithFormat:@"沈・"];
2129 if(LC[cil].A->D->sort == 10) str = [NSString stringWithFormat:@"魅・"];
2131 if(LC[cil].A->D->seed == 0) str = [str stringByAppendingFormat:@"打撃"];
2132 if(LC[cil].A->D->seed == 1) str = [str stringByAppendingFormat:@"斬撃"];
2133 if(LC[cil].A->D->seed == 2) str = [str stringByAppendingFormat:@"突き"];
2134 if(LC[cil].A->D->seed == 3) str = [str stringByAppendingFormat:@"射手"];
2135 if(LC[cil].A->D->seed == 4) str = [str stringByAppendingFormat:@"銃撃"];
2136 if(LC[cil].A->D->seed == 5) str = [str stringByAppendingFormat:@"砲撃"];
2137 if(LC[cil].A->D->seed == 6) str = [str stringByAppendingFormat:@"火炎"];
2138 if(LC[cil].A->D->seed == 7) str = [str stringByAppendingFormat:@"冷気"];
2139 if(LC[cil].A->D->seed == 8) str = [str stringByAppendingFormat:@"電撃"];
2140 if(LC[cil].A->D->seed == 9) str = [str stringByAppendingFormat:@"風圧"];
2141 if(LC[cil].A->D->seed == 10) str = [str stringByAppendingFormat:@"流水"];
2142 if(LC[cil].A->D->seed == 11) str = [str stringByAppendingFormat:@"ガス"];
2143 if(LC[cil].A->D->seed == 12) str = [str stringByAppendingFormat:@"神聖"];
2144 if(LC[cil].A->D->seed == 13) str = [str stringByAppendingFormat:@"暗黒"];
2145 if(LC[cil].A->D->seed == 14) str = [str stringByAppendingFormat:@"爆撃"];
2146 if(LC[cil].A->D->seed == 15) str = [str stringByAppendingFormat:@"流血"];
2148 if(LC[cil].A->D->fix == 0) str = [str stringByAppendingFormat:@"通"];
2149 if(LC[cil].A->D->fix == 1) str = [str stringByAppendingFormat:@"弓"];
2150 if(LC[cil].A->D->fix == 2) str = [str stringByAppendingFormat:@"銃"];
2152 [dict setValue:[NSString stringWithFormat:@"%@", str] forKey:@"type"];
2156 if(LC[cil].A->D->count <= 0 && LC[cil].A->D->sort == 0)
2158 LC[cil].A->D = NULL;
2161 [self willChangeValueForKey:@"damageListMA"];
2162 [damageListMA addObject:dict];
2163 [self didChangeValueForKey:@"damageListMA"];
2165 LC[cil].A->D = LC[cil].A->D->next;
2167 }while(LC[cil].A->D != NULL);
2169 LC[cil].A->D = Dtop;
2171 DMGEXTEND *Etop = LC[cil].A->E;
2172 while(LC[cil].A->E != NULL){
2173 NSMutableDictionary* dict = [NSMutableDictionary new];
2176 [dict setValue:[NSString stringWithFormat:@"%d", LC[cil].A->E->rate] forKey:@"rate"];
2177 [dict setValue:[NSString stringWithFormat:@"%d", LC[cil].A->E->atkHit] forKey:@"atkHit"];
2178 [dict setValue:[NSString stringWithFormat:@"%d", LC[cil].A->E->hit] forKey:@"hit"];
2180 [self willChangeValueForKey:@"hitListMA"];
2181 [hitListMA addObject:dict];
2182 [self didChangeValueForKey:@"hitListMA"];
2184 LC[cil].A->E = LC[cil].A->E->next;
2187 LC[cil].A->E = Etop;
2200 UCLDpoint.x = [UCLPanelAttack frame].origin.x + 0;
2201 UCLDpoint.y = [UCLPanelAttack frame].origin.y + 0;
2202 [UCLPanelAttackDetail setFrameOrigin:UCLDpoint];
2203 [UCLPanelAttackDetail makeKeyAndOrderFront:nil];
2206 -(void)doubleClickUCL:(id)sender{
2207 clickIndex = [unitChipListTV clickedRow];
2209 [TFname setStringValue:UC[clickIndex].name];
2210 [TFnameN setStringValue:UC[clickIndex].nameNick];
2211 [TFnameR setStringValue:UC[clickIndex].nameRecognition];
2212 [TFnameID setStringValue:UC[clickIndex].nameID];
2213 [TFnameC setStringValue:UC[clickIndex].nameClass];
2216 [TFhp setDoubleValue:UC[clickIndex].S_M.HP];
2217 [TFmp setDoubleValue:UC[clickIndex].S_M.MP];
2218 [TFap setDoubleValue:UC[clickIndex].S_M.AP];
2219 [TFwt setDoubleValue:UC[clickIndex].S_M.WT];
2221 [TFbp setStringValue:[NSString stringWithFormat:@"BP %g", UC[clickIndex].S_M.BP]];
2222 [TFatk setStringValue:[NSString stringWithFormat:@"攻撃力 %g", UC[clickIndex].S_M.ATK]];
2223 [TFdef setStringValue:[NSString stringWithFormat:@"防御力 %g", UC[clickIndex].S_M.DEF]];
2224 [TFcap setStringValue:[NSString stringWithFormat:@"演算力 %g", UC[clickIndex].S_M.CAP]];
2225 [TFacu setStringValue:[NSString stringWithFormat:@"命中値 %g", UC[clickIndex].S_M.ACU]];
2226 [TFeva setStringValue:[NSString stringWithFormat:@"回避値 %g", UC[clickIndex].S_M.EVA]];
2228 [TFstr setDoubleValue:UC[clickIndex].S_M.STR];
2229 [TFvit setDoubleValue:UC[clickIndex].S_M.VIT];
2230 [TFagi setDoubleValue:UC[clickIndex].S_M.AGI];
2231 [TFdex setDoubleValue:UC[clickIndex].S_M.DEX];
2232 [TFmen setDoubleValue:UC[clickIndex].S_M.MEN];
2233 [TFint setDoubleValue:UC[clickIndex].S_M.INT];
2234 [TFluk setDoubleValue:UC[clickIndex].S_M.LUK];
2235 [TFmov setIntValue:UC[clickIndex].S_M.MOV];
2237 [TFmel setDoubleValue:UC[clickIndex].S_M.MEL];
2238 [TFmis setDoubleValue:UC[clickIndex].S_M.MIS];
2239 [TFhit setDoubleValue:UC[clickIndex].S_M.HIT];
2240 [TFdod setDoubleValue:UC[clickIndex].S_M.DOD];
2241 [TFrea setDoubleValue:UC[clickIndex].S_M.REA];
2242 [TFski setDoubleValue:UC[clickIndex].S_M.SKI];
2244 [TFcSupply setIntValue:UC[clickIndex].S_M.cSupply];
2245 [TFcFood setIntValue:UC[clickIndex].S_M.cFood];
2246 [TFcMoney setIntValue:UC[clickIndex].S_M.cMoney];
2247 [TFcWT setIntValue:UC[clickIndex].S_M.cWT];
2249 [PUPtMons selectItemAtIndex:UC[clickIndex].S_M.typeMONS];
2250 [PUPtMove selectItemAtIndex:UC[clickIndex].S_M.typeMOVE];
2251 //[PUPtEquip selectItemAtIndex:UC[clickIndex].S_M.typeMOVE];
2253 [IVimg setImage:UC[clickIndex].img];
2254 [IVimgBig setImage:UC[clickIndex].imgb];
2255 [Baura setIntValue:UC[clickIndex].aura];
2257 [self addPUBEquipList];
2261 UCLDpoint.x = [UCLPanel frame].origin.x + 50;
2262 UCLDpoint.y = [UCLPanel frame].origin.y + 100;
2263 [UCLDetailPanel setFrameOrigin:UCLDpoint];
2264 [UCLDetailPanel makeKeyAndOrderFront:nil];
2267 -(IBAction)saveUCL:(id)sender{
2269 UC[clickIndex].name = [[TFname stringValue] retain];
2270 UC[clickIndex].nameNick = [[TFnameN stringValue] retain];
2271 UC[clickIndex].nameRecognition = [[TFnameR stringValue] retain];
2272 UC[clickIndex].nameID = [[TFnameID stringValue] retain];
2273 UC[clickIndex].nameClass = [[TFnameC stringValue] retain];
2275 UC[clickIndex].S_M.HP = [TFhp doubleValue];
2276 UC[clickIndex].S_M.MP = [TFmp doubleValue];
2277 UC[clickIndex].S_M.AP = [TFap doubleValue];
2278 UC[clickIndex].S_M.WT = [TFwt doubleValue];
2280 UC[clickIndex].S_M.STR = [TFstr doubleValue];
2281 UC[clickIndex].S_M.VIT = [TFvit doubleValue];
2282 UC[clickIndex].S_M.AGI = [TFagi doubleValue];
2283 UC[clickIndex].S_M.DEX = [TFdex doubleValue];
2284 UC[clickIndex].S_M.MEN = [TFmen doubleValue];
2285 UC[clickIndex].S_M.INT = [TFint doubleValue];
2286 UC[clickIndex].S_M.LUK = [TFluk doubleValue];
2287 UC[clickIndex].S_M.MOV = [TFmov intValue];
2289 UC[clickIndex].S_M.MEL = [TFmel doubleValue];
2290 UC[clickIndex].S_M.MIS = [TFmis doubleValue];
2291 UC[clickIndex].S_M.HIT = [TFhit doubleValue];
2292 UC[clickIndex].S_M.DOD = [TFdod doubleValue];
2293 UC[clickIndex].S_M.REA = [TFrea doubleValue];
2294 UC[clickIndex].S_M.SKI = [TFski doubleValue];
2296 UC[clickIndex].S_M.cSupply = [TFcSupply intValue];
2297 UC[clickIndex].S_M.cFood = [TFcFood intValue];
2298 UC[clickIndex].S_M.cMoney = [TFcMoney intValue];
2299 UC[clickIndex].S_M.cWT = [TFcWT intValue];
2301 UC[clickIndex].S_M.typeMONS = (int)[PUPtMons indexOfSelectedItem];
2302 UC[clickIndex].S_M.typeMOVE = (int)[PUPtMove indexOfSelectedItem];
2304 UC[clickIndex].img = [[IVimg image] retain];
2305 UC[clickIndex].imgb = [[IVimgBig image] retain];
2306 UC[clickIndex].aura = [Baura intValue];
2308 [unitChipListAC setValue:[NSString stringWithFormat:@"%@", UC[clickIndex].name] forKeyPath:@"selection.name"];
2309 [unitChipListAC setValue:[NSString stringWithFormat:@"%@", UC[clickIndex].nameClass] forKeyPath:@"selection.nameC"];
2310 [unitChipListAC setValue:[NSString stringWithFormat:@"%g", UC[clickIndex].S_M.HP] forKeyPath:@"selection.HP"];
2311 [unitChipListAC setValue:[NSString stringWithFormat:@"%g", UC[clickIndex].S_M.BP] forKeyPath:@"selection.BP"];
2312 [unitChipListAC setValue:UC[clickIndex].img forKeyPath:@"selection.img"];
2313 [unitChipListAC setValue:UC[clickIndex].imgb forKeyPath:@"selection.imgBig"];
2318 [UCLDetailPanel close];
2320 -(IBAction)cancelUCL:(id)sender{
2321 [UCLDetailPanel close];
2324 -(void)initFileDirectory{
2325 NSString *directoryPath;
2327 directoryPath = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
2328 [[NSFileManager defaultManager] changeCurrentDirectoryPath:directoryPath];
2331 cwd = getcwd(NULL, 0);
2334 NSData *InitialData = [NSData dataWithContentsOfFile:@"data/UnitChip/preset.txt"];
2335 NSString *pathUC = @"data/UnitChip/img";
2336 NSString *pathDATA2 = @"data/UnitChip/preset.txt";
2337 NSString *pathUCP = @"data/UnitChip/preset.txt";
2338 NSString *fileData = nil;
2342 UCN = (int)chipNumb;
2343 if(![[NSFileManager defaultManager] fileExistsAtPath:pathUCP]){
2344 [[NSFileManager defaultManager] createDirectoryAtPath:pathUC withIntermediateDirectories:YES attributes:nil error:nil];
2345 [[NSFileManager defaultManager] createFileAtPath:pathDATA2 contents:nil attributes:nil];
2347 [[NSFileManager defaultManager] createFileAtPath:pathUCP contents:nil attributes:nil];
2349 NSString *data0 = @"56";
2350 [data0 writeToFile:pathUCP atomically:YES encoding:NSUTF8StringEncoding error:nil];
2352 NSString *data1 = @"村人\n村人\nパーサント\n村人,uc1,0\n"
2353 @"100,50,0,500,5\n30,30,30,30,30,30,0,9\n100,100,100,100,100,100\n100,100,100,100,100\n0,0,0,50,0,500\n"
2354 @"100,100,100,100,100,100,"
2355 @"100,100,100,100,100,100,100,100,100,100,"
2356 @"100,100,100,100,100,100\nuc1.png,ucb1.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2357 NSString *data2 = @"兵士\n兵士\nソルジャー\n兵士,uc2,0\n"
2358 @"150,80,0,520,6\n50,40,45,40,35,35,0,12\n120,120,100,100,120,130\n100,100,100,100,100\n0,0,0,50,50,500\n"
2359 @"80,80,100,80,60,100,"
2360 @"90,80,150,100,100,100,100,100,80,100,"
2361 @"100,100,100,100,100,100\nuc2.png,ucb2.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2362 NSString *data3 = @"戦士\n戦士\nファイター\n戦士,uc3,0\n"
2363 @"200,100,0,550,6\n55,50,30,40,40,32,0,14\n130,110,100,100,125,135\n100,100,100,100,100\n0,0,0,80,30,500\n"
2364 @"90,90,100,100,90,100,"
2365 @"100,100,120,100,100,100,100,100,100,100,"
2366 @"100,100,100,100,100,100\nuc3.png,ucb3.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2367 NSString *data4 = @"女蛮族\n女蛮族\nアマゾネス\n女蛮族,uc4,0\n"
2368 @"120,70,0,480,5\n40,35,50,50,45,36,0,11\n110,130,120,120,130,130\n100,100,100,100,100\n0,0,0,30,40,500\n"
2369 @"100,100,100,100,100,100,"
2370 @"100,100,100,100,100,100,100,100,100,100,"
2371 @"100,100,100,100,100,100\nuc4.png,ucb4.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2372 NSString *data5 = @"僧徒\n僧徒\nアコライト\n僧徒,uc5,0\n"
2373 @"130,100,0,540,5\n35,32,40,36,55,50,0,10\n105,110,105,100,125,125\n100,100,100,100,100\n0,0,0,20,100,500\n"
2374 @"100,100,100,100,100,100,"
2375 @"100,130,80,100,100,100,50,120,100,100,"
2376 @"100,100,100,100,100,100\nuc5.png,ucb5.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2377 NSString *data6 = @"魔法使い\n魔法使い\nマジシャン\n魔法使い,uc6,0\n"
2378 @"120,150,0,490,5\n38,32,42,45,50,60,0,10\n105,120,120,120,130,140\n100,100,100,100,100\n0,0,100,30,80,500\n"
2379 @"100,150,80,90,100,100,"
2380 @"80,70,60,90,90,70,100,80,80,90,"
2381 @"100,100,100,100,100,100\nuc6.png,ucb6.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2383 NSString *data7 = @"盗賊\n盗賊\nシーフ\n盗賊,uc7,0\n"
2384 @"140,90,0,450,6\n45,40,60,50,45,40,0,18\n110,115,130,140,130,145\n100,100,100,100,100\n0,0,0,60,40,500\n"
2385 @"100,100,100,100,100,100,"
2386 @"100,100,100,100,100,100,100,100,100,100,"
2387 @"100,100,100,100,100,100\nuc7.png,ucb7.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2388 NSString *data8 = @"騎士\n騎士\nナイト\n騎士,uc8,0\n"
2389 @"225,100,0,500,6\n60,50,50,55,55,50,0,12\n130,125,120,120,125,130\n100,100,100,100,100\n0,0,0,60,80,500\n"
2390 @"70,70,90,80,50,100,"
2391 @"80,70,150,90,100,100,100,100,80,100,"
2392 @"100,100,100,100,100,100\nuc8.png,ucb8.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2393 NSString *data9 = @"狂戦士\n狂戦士\nバーサーカー\n狂戦士,uc9,0\n"
2394 @"255,80,0,470,6\n70,40,55,60,58,40,0,14\n140,110,130,110,130,140\n100,100,100,100,100\n0,0,0,100,50,500\n"
2395 @"100,100,100,100,100,100,"
2396 @"100,120,100,100,100,100,100,100,100,100,"
2397 @"100,100,100,100,100,100\nuc9.png,ucb9.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2398 NSString *data10 = @"闘技士\n闘技士\nグラディエーター\n闘技士,uc10,0\n"
2399 @"300,100,0,450,6\n80,45,60,65,60,50,0,15\n135,120,125,120,135,135\n100,100,100,100,100\n0,0,0,80,70,500\n"
2400 @"80,80,100,80,80,100,"
2401 @"80,80,120,80,80,100,100,100,80,100,"
2402 @"100,100,100,100,100,100\nuc10.png,ucb10.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2403 NSString *data11 = @"傭兵\n傭兵\nマーシナリ\n傭兵,uc11,0\n"
2404 @"200,100,0,480,6\n55,40,60,60,55,40,0,15\n120,120,120,120,130,130\n100,100,100,100,100\n0,0,0,60,60,500\n"
2405 @"100,100,100,100,100,100,"
2406 @"100,100,100,100,100,100,100,100,100,100,"
2407 @"100,100,100,100,100,100\nuc11.png,ucb11.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2408 NSString *data12 = @"弓士\n弓士\nアーチャー\n弓士,uc12,0\n"
2409 @"180,90,0,500,6\n50,50,55,55,50,50,0,13\n120,120,120,120,120,120\n100,100,100,100,100\n0,0,50,50,50,500\n"
2410 @"100,100,100,100,100,100,"
2411 @"100,100,100,100,100,100,100,100,100,100,"
2412 @"100,100,100,100,100,100\nuc12.png,ucb12.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2413 NSString *data13 = @"僧侶\n僧侶\nクレリック\n僧侶,uc13,0\n"
2414 @"160,150,0,500,5\n38,34,50,60,60,60,0,10\n110,110,120,120,125,130\n100,100,100,100,100\n0,0,0,30,150,500\n"
2415 @"100,100,100,100,100,100,"
2416 @"80,120,70,80,80,100,50,120,100,100,"
2417 @"100,100,100,100,100,100\nuc13.png,ucb13.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2418 NSString *data14 = @"魔術師\n魔術師\nウィザード\n魔術師,uc14,0\n"
2419 @"150,200,0,450,5\n40,36,54,58,60,80,0,10\n105,130,130,150,150,150\n100,100,100,100,100\n0,0,200,30,100,500\n"
2420 @"100,130,80,100,100,100,"
2421 @"70,50,60,80,90,80,100,70,100,100,"
2422 @"100,100,100,100,100,100\nuc14.png,ucb14.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2423 NSString *data15 = @"祈祷師\n祈祷師\nシャーマン\n祈祷師,uc15,0\n"
2424 @"140,180,0,520,5\n50,50,50,60,80,60,0,10\n110,120,130,130,140,140\n100,100,100,100,100\n0,0,60,40,50,500\n"
2425 @"100,100,100,100,100,100,"
2426 @"80,80,80,80,80,80,80,80,100,100,"
2427 @"100,100,100,100,100,100\nuc15.png,ucb15.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2428 NSString *data16 = @"奇術師\n奇術師\nドルイド\n奇術師,uc16,0\n"
2429 @"180,150,0,460,5\n45,40,60,75,65,65,0,12\n120,120,130,130,130,150\n100,100,100,100,100\n0,0,40,60,60,500\n"
2430 @"100,100,100,100,100,100,"
2431 @"80,90,70,60,80,60,100,60,80,80,"
2432 @"100,100,100,100,100,100\nuc16.png,ucb16.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2433 NSString *data17 = @"魔女\n魔女\nウィッチ\n魔女,uc17,0\n"
2434 @"130,200,0,480,5\n35,45,55,80,80,80,0,10\n110,130,150,140,150,150\n100,100,100,100,100\n0,0,300,30,150,500\n"
2435 @"100,100,100,100,100,100,"
2436 @"90,90,80,80,90,80,130,70,100,100,"
2437 @"100,100,100,100,100,100\nuc17.png,ucb17.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2438 NSString *data18 = @"侍\n侍\nサムライ\n侍,uc18,0\n"
2439 @"200,100,0,450,6\n70,35,70,70,65,45,0,16\n150,110,150,150,150,150\n100,100,100,100,100\n0,0,0,120,0,500\n"
2440 @"100,100,100,100,100,100,"
2441 @"100,100,100,100,100,100,100,100,100,100,"
2442 @"100,100,100,100,100,100\nuc18.png,ucb18.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2443 NSString *data19 = @"聖騎士\n聖騎士\nホワイトナイト\n聖騎士,uc19,0\n"
2444 @"250,150,0,420,6\n98,50,76,82,74,52,0,15\n140,130,160,160,150,150\n100,100,100,100,100\n0,0,0,50,200,500\n"
2445 @"70,70,80,80,50,100,"
2446 @"80,80,130,80,80,80,80,120,70,100,"
2447 @"100,100,100,100,100,100\nuc19.png,ucb19.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2448 NSString *data20 = @"黒騎士\n黒騎士\nブラックナイト\n黒騎士,uc20,0\n"
2449 @"270,180,0,460,6\n82,86,60,80,78,60,0,13\n140,140,150,150,150,150\n100,100,100,100,100\n0,0,0,100,150,500\n"
2450 @"60,60,60,60,50,100,"
2451 @"80,70,130,80,80,80,150,50,60,100,"
2452 @"100,100,100,100,100,100\nuc20.png,ucb20.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2453 NSString *data21 = @"亡霊騎士\n亡霊騎士\nスタンジャンナイト\n亡霊騎士,uc21,0\n"
2454 @"300,200,0,500,6\n120,150,45,60,50,40,0,10\n150,120,120,120,120,120\n100,100,100,100,100\n0,0,300,0,100,500\n"
2455 @"50,50,50,0,0,150,"
2456 @"50,0,50,50,50,0,200,30,150,0,"
2457 @"100,100,100,100,100,100\nuc21.png,ucb21.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2458 NSString *data22 = @"王国騎士\n王国騎士\nレギオン\n王国騎士,uc22,0\n"
2459 @"260,160,0,450,6\n90,90,60,70,70,60,0,14\n150,130,150,150,150,150\n100,100,100,100,100\n0,0,0,100,300,500\n"
2460 @"60,60,80,60,50,100,"
2461 @"80,80,120,80,80,80,80,80,60,100,"
2462 @"100,100,100,100,100,100\nuc22.png,ucb22.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2463 NSString *data23 = @"怪盗\n怪盗\nレンジャー\n怪盗,uc23,0\n"
2464 @"230,200,0,400,6\n76,68,92,98,86,72,0,18\n130,140,160,160,155,160\n100,100,100,100,100\n0,0,100,100,100,500\n"
2465 @"100,100,100,100,100,100,"
2466 @"100,100,100,100,100,100,100,100,100,100,"
2467 @"100,100,100,100,100,100\nuc23.png,ucb23.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2468 NSString *data24 = @"司祭\n司祭\nプリースト\n司祭,uc24,0\n"
2469 @"200,250,0,480,6\n60,76,64,82,94,90,0,12\n120,120,150,140,145,150\n100,100,100,100,100\n0,0,0,30,250,500\n"
2470 @"100,100,100,100,100,100,"
2471 @"80,80,80,80,80,80,50,90,100,100,"
2472 @"100,100,100,100,100,100\nuc24.png,ucb24.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2473 NSString *data25 = @"言語術士\n言語術士\nワーロック\n言語術士,uc25,0\n"
2474 @"130,300,0,460,5\n34,46,52,75,120,130,0,12\n105,110,140,120,150,155\n100,100,100,100,100\n0,0,500,30,300,500\n"
2475 @"100,100,100,100,100,100,"
2476 @"50,50,50,80,80,80,100,100,100,100,"
2477 @"100,100,100,100,100,100\nuc25.png,ucb25.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2478 NSString *data26 = @"聖女\n聖女\nセイレーン\n聖女,uc26,0\n"
2479 @"150,255,0,470,5\n38,34,68,80,98,112,0,12\n105,150,150,120,140,150\n100,100,100,100,100\n0,0,300,50,200,500\n"
2480 @"100,120,100,100,100,100,"
2481 @"60,70,50,60,80,80,60,80,80,100,"
2482 @"100,100,100,100,100,100\nuc26.png,ucb26.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2483 NSString *data27 = @"言霊使い\n言霊使い\nソーサレス\n言霊使い,uc27,0\n"
2484 @"170,240,0,460,5\n48,40,78,76,85,98,0,10\n120,130,140,140,145,145\n100,100,100,100,100\n0,0,200,30,100,500\n"
2485 @"100,120,100,100,100,100,"
2486 @"70,70,70,70,70,70,70,70,70,70,"
2487 @"100,100,100,100,100,100\nuc27.png,ucb27.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2488 NSString *data28 = @"聖戦士\n聖戦士\nヴァルキリー\n聖戦士,uc28,0\n"
2489 @"200,200,0,450,5\n55,60,82,96,70,100,0,14\n140,140,140,140,140,150\n100,100,100,100,100\n0,0,500,50,500,500\n"
2490 @"80,80,100,80,80,100,"
2491 @"80,80,70,80,70,80,80,90,80,90,"
2492 @"100,100,100,100,100,100\nuc28.png,ucb28.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2493 NSString *data29 = @"聖騎士長\n聖騎士長\nパラディン\n聖騎士長,uc29,0\n"
2494 @"320,230,0,400,7\n120,100,130,115,100,100,0,14\n150,130,150,150,150,150\n100,100,100,100,100\n0,0,0,50,400,500\n"
2495 @"60,60,60,60,50,100,"
2496 @"60,60,100,70,80,80,80,120,80,100,"
2497 @"100,100,100,100,100,100\nuc29.png,ucb29.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2498 NSString *data30 = @"暗黒騎士\n暗黒騎士\nテラーナイト\n暗黒騎士,uc30,0\n"
2499 @"400,150,0,420,7\n130,130,90,100,94,64,0,12\n150,120,150,150,150,150\n100,100,100,100,100\n0,0,0,100,200,500\n"
2500 @"50,50,50,50,50,100,"
2501 @"70,70,100,70,50,50,120,50,50,100,"
2502 @"100,100,100,100,100,100\nuc30.png,ucb30.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2503 NSString *data31 = @"教皇騎士\n教皇騎士\nテンプルナイト\n教皇騎士,uc31,0\n"
2504 @"360,250,0,400,7\n100,100,100,100,100,100,0,12\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,200,100,300,500\n"
2505 @"60,60,60,60,50,100,"
2506 @"50,50,50,50,50,50,50,50,50,100,"
2507 @"100,100,100,100,100,100\nuc31.png,ucb31.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2508 NSString *data32 = @"狙撃手\n狙撃手\nスナイパー\n狙撃手,uc32,0\n"
2509 @"200,160,0,450,5\n60,50,90,90,80,70,0,13\n110,150,180,130,150,150\n100,100,100,100,100\n0,0,200,100,300,500\n"
2510 @"100,100,100,100,100,100,"
2511 @"100,100,100,100,100,100,100,100,100,100,"
2512 @"100,100,100,100,100,100\nuc32.png,ucb32.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2513 NSString *data33 = @"司教\n司教\nビショップ\n司教,uc33,0\n"
2514 @"240,400,0,450,5\n62,80,70,98,110,120,0,10\n125,125,150,150,150,150\n100,100,100,100,100\n0,0,0,50,500,500\n"
2515 @"100,100,100,100,100,100,"
2516 @"80,80,80,80,80,80,50,150,100,100,"
2517 @"100,100,100,100,100,100\nuc33.png,ucb33.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2518 NSString *data34 = @"賢者\n賢者\nセイジ\n賢者,uc34,0\n"
2519 @"230,500,0,400,6\n98,86,94,98,120,150,0,13\n130,140,150,150,150,150\n100,100,100,100,100\n0,0,250,50,250,500\n"
2520 @"70,70,70,80,80,100,"
2521 @"50,50,50,50,50,50,50,75,100,100,"
2522 @"100,100,100,100,100,100\nuc34.png,ucb34.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2523 NSString *data35 = @"将軍\n将軍\nジェネラル\n将軍,uc35,0\n"
2525 @"600,300,0,450,6\n150,140,80,130,96,120,0,12\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2526 @"60,60,80,50,80,100,"
2527 @"70,70,80,70,70,70,80,80,70,100,"
2528 @"100,100,100,100,100,100\nuc35.png,ucb35.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2529 NSString *data36 = @"男爵\n男爵\nバロン\n男爵,uc36,0\n"
2530 @"550,500,0,520,6\n100,180,50,90,120,100,0,9\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2531 @"50,50,50,50,25,100,"
2532 @"70,50,150,50,50,60,100,70,50,100,"
2533 @"100,100,100,100,100,100\nuc36.png,ucb36.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2534 NSString *data37 = @"魔導士\n魔導士\nアークメイジ\n魔導士,uc37,0\n"
2535 @"200,500,0,450,6\n60,50,78,98,140,140,0,12\n120,130,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2536 @"100,100,100,100,100,100,"
2537 @"50,50,50,50,50,50,70,50,50,70,"
2538 @"100,100,100,100,100,100\nuc37.png,ucb37.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2539 NSString *data38 = @"召喚師\n召喚師\nサモナー\n召喚師,uc38,0\n"
2540 @"220,550,0,480,5\n50,50,60,80,150,150,0,10\n125,125,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2541 @"100,100,100,100,100,100,"
2542 @"70,70,60,60,60,50,80,60,50,80,"
2543 @"100,100,100,100,100,100\nuc38.png,ucb38.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2544 NSString *data39 = @"古語術士\n古語術士\nルーンマスター\n古語術士,uc39,0\n"
2545 @"180,600,0,500,5\n90,90,90,90,150,150,0,10\n120,130,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2546 @"100,100,100,100,100,100,"
2547 @"50,50,50,50,50,50,50,50,50,50,"
2548 @"100,100,100,100,100,100\nuc39.png,ucb39.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2549 NSString *data40 = @"死霊使い\n死霊使い\nネクロマンサー\n死霊使い,uc40,0\n"
2550 @"210,700,0,500,5\n50,60,70,140,150,150,0,10\n130,130,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2551 @"100,100,100,100,100,100,"
2552 @"50,50,50,50,50,50,200,25,50,50,"
2553 @"100,100,100,100,100,100\nuc40.png,ucb40.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2554 NSString *data41 = @"占星術士\n占星術士\nアストロマンサー\n占星術士,uc41,0\n"
2555 @"250,800,0,400,5\n80,70,120,150,150,150,0,12\n130,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2556 @"80,80,80,80,80,80,"
2557 @"50,50,50,50,50,50,50,50,50,50,"
2558 @"100,100,100,100,100,100\nuc41.png,ucb41.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2559 NSString *data42 = @"元帥\n元帥\nマーシャル\n元帥,uc42,0\n"
2560 @"500,200,0,500,6\n130,150,60,84,76,85,0,9\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2561 @"50,50,50,50,25,100,"
2562 @"80,60,150,50,60,70,100,70,50,100,"
2563 @"100,100,100,100,100,100\nuc42.png,ucb42.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2565 NSString *data43 = @"勇者\n勇者\nロード\n勇者,uc43,0\n"
2566 @"500,250,0,400,6\n125,125,125,125,125,125,0,15\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2567 @"75,75,75,75,75,75,"
2568 @"75,75,75,75,75,75,75,75,75,75,"
2569 @"100,100,100,100,100,100\nuc43.png,ucb43.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2571 NSString *data44 = @"公爵\n公爵\nデューク\n公爵,uc44,0\n"
2572 @"430,320,0,400,6\n150,150,120,125,120,120,0,12\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2573 @"50,50,50,50,25,100,"
2574 @"50,50,50,50,50,50,80,50,50,100,"
2575 @"100,100,100,100,100,100\nuc44.png,ucb44.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2577 NSString *data45 = @"王子\n王子\nプリンス\n王子,uc45,0\n"
2578 @"600,300,0,400,6\n120,100,100,120,130,120,0,14\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2579 @"80,80,80,80,80,80,"
2580 @"80,80,80,80,80,80,50,100,80,80,"
2581 @"100,100,100,100,100,100\nuc45.png,ucb45.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2582 NSString *data46 = @"王女\n王女\nプリンセス\n王女,uc46,0\n"
2583 @"500,500,0,500,6\n100,100,100,150,150,150,0,12\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2584 @"100,100,100,100,100,100,"
2585 @"50,50,50,50,50,50,50,50,50,50,"
2586 @"100,100,100,100,100,100\nuc47.png,ucb47.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2587 NSString *data47 = @"枢機卿\n枢機卿\nカーディナル\n枢機卿,uc47,0\n"
2588 @"400,400,0,550,6\n40,40,80,90,100,120,0,10\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2589 @"70,70,70,70,70,70,"
2590 @"50,50,50,50,50,50,25,50,50,50,"
2591 @"100,100,100,100,100,100\nuc47.png,ucb47.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2592 NSString *data48 = @"大司教\n大司教\nアークビショップ\n大司教,uc48,0\n"
2594 @"450,400,0,400,6\n100,100,120,120,120,120,0,14\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2595 @"50,50,50,50,50,50,"
2596 @"50,50,50,50,50,50,50,50,50,50,"
2597 @"100,100,100,100,100,100\nuc48.png,ucb48.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2598 NSString *data49 = @"教皇\n教皇\nポープ\n教皇,uc49,0\n"
2599 @"300,900,0,450,6\n50,50,100,150,150,150,0,12\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2600 @"100,100,100,100,100,100,"
2601 @"50,50,50,50,50,50,50,50,50,50,"
2602 @"100,100,100,100,100,100\nuc49.png,ucb49.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2603 NSString *data50 = @"王\n王\nキング\n王,uc50,0\n"
2604 @"500,250,0,500,6\n50,50,50,100,130,120,0,12\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2605 @"80,80,80,80,80,80,"
2606 @"50,50,50,50,50,50,50,50,50,50,"
2607 @"100,100,100,100,100,100\nuc50.png,ucb50.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2608 NSString *data51 = @"女王\n女王\nクイーン\n女王,uc51,0\n"
2609 @"500,500,0,450,6\n50,50,50,130,120,100,0,15\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2610 @"50,50,50,50,50,50,"
2611 @"50,50,50,50,50,50,50,50,50,50,"
2612 @"100,100,100,100,100,100\nuc51.png,ucb51.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2614 NSString *data52 = @"皇帝\n皇帝\nエンペラー\n皇帝,uc52,0\n"
2615 @"900,800,0,450,6\n150,150,150,150,150,150,0,12\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2616 @"50,50,50,50,50,50,"
2617 @"25,25,25,50,50,50,50,50,50,50,"
2618 @"100,100,100,100,100,100\nuc52.png,ucb52.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2619 NSString *data53 = @"三日月王\n三日月王\nクレセント\n三日月王,uc53,0\n"
2620 @"1200,1000,150,400,6\n200,160,180,230,220,180,0,15\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2621 @"50,50,50,50,50,50,"
2622 @"25,25,25,25,25,25,50,25,25,50,"
2623 @"100,100,100,100,100,100\nuc53.png,ucb53.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2624 NSString *data54 = @"月の王\n月の王\nセレス\n月の王,uc54,0\n"
2625 @"1500,1000,200,400,6\n225,200,210,250,255,255,0,15\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2626 @"25,25,25,25,25,50,"
2627 @"25,25,25,25,25,25,25,25,25,50,"
2628 @"100,100,100,100,100,100\nuc54.png,ucb54.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2629 NSString *data55 = @"日蝕王\n日蝕王\nイクリプス\n日蝕王,uc55,0\n"
2630 @"2500,1500,250,400,6\n250,230,240,250,255,255,0,15\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2631 @"10,10,10,10,10,25,"
2632 @"10,10,10,10,10,25,25,25,25,25,"
2633 @"100,100,100,100,100,100\nuc55.png,ucb55.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2634 NSString *data56 = @"彗星王\n彗星王\nコメット\n彗星王,uc56,0\n"
2635 @"5000,2500,300,400,6\n255,255,255,255,255,255,0,15\n150,150,150,150,150,150\n100,100,100,100,100\n0,0,0,100,1000,500\n"
2636 @"10,10,10,10,10,10,"
2637 @"10,10,10,10,10,10,10,10,10,10,"
2638 @"100,100,100,100,100,100\nuc56.png,ucb56.png\n----\n----\n0,0,0,0\n----\n-1,-1,-1,-1,-1,-1\n\n\n----\n";
2640 for (int i=1; i<=chipNumb; i++) {
2641 NSString *fdata = @"data/UnitChip/UCdata";
2643 fdata = [fdata stringByAppendingFormat:@"%d.txt", i];
2647 [data1 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2650 [data2 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2653 [data3 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2656 [data4 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2659 [data5 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2662 [data6 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2665 [data7 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2668 [data8 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2671 [data9 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2674 [data10 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2677 [data11 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2680 [data12 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2683 [data13 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2686 [data14 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2689 [data15 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2692 [data16 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2695 [data17 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2698 [data18 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2701 [data19 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2704 [data20 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2707 [data21 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2710 [data22 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2713 [data23 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2716 [data24 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2719 [data25 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2722 [data26 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2725 [data27 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2728 [data28 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2731 [data29 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2734 [data30 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2737 [data31 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2740 [data32 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2743 [data33 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2746 [data34 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2749 [data35 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2752 [data36 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2755 [data37 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2758 [data38 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2761 [data39 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2764 [data40 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2767 [data41 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2770 [data42 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2773 [data43 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2776 [data44 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2779 [data45 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2782 [data46 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2785 [data47 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2788 [data48 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2791 [data49 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2794 [data50 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2797 [data51 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2800 [data52 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2803 [data53 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2806 [data54 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2809 [data55 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2812 [data56 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
2827 fileData = [NSString stringWithContentsOfFile:pathUCP encoding:NSUTF8StringEncoding error:nil];
2828 fileDataArray = [fileData componentsSeparatedByString:@"\n"];
2829 int instantNum = [[fileDataArray objectAtIndex:0] intValue];
2831 chipNumb = instantNum;
2832 UCN = (int)chipNumb;
2834 for (int i=0; i<chipNumb; i++) {
2835 NSString *path = @"data/AttackList/ALdata";
2837 path = [path stringByAppendingFormat:@"%dE", i+1];
2839 [[NSFileManager defaultManager] createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:nil];
2843 NSString *fdata = @"data/UnitChip/UCdata";
2845 fdata = [fdata stringByAppendingFormat:@"%d.txt", i+1];
2847 fileData = [NSString stringWithContentsOfFile:fdata encoding:NSUTF8StringEncoding error:nil];
2848 fileDataArray = [fileData componentsSeparatedByString:@"\n"];
2850 UC[i].name = [[fileDataArray objectAtIndex:0] retain];
2851 UC[i].nameNick = [[fileDataArray objectAtIndex:1] retain];
2852 UC[i].nameClass = [[fileDataArray objectAtIndex:2] retain];
2854 NSArray *items = [[fileDataArray objectAtIndex:3] componentsSeparatedByString:@","];
2856 UC[i].nameRecognition = [[items objectAtIndex:0] retain];
2857 UC[i].nameID = [[items objectAtIndex:1] retain];
2858 UC[i].aura = [[items objectAtIndex:2] intValue];
2860 items = [[fileDataArray objectAtIndex:4] componentsSeparatedByString:@","];
2862 UC[i].S_M.HP = [[items objectAtIndex:0] intValue];
2863 UC[i].S_M.MP = [[items objectAtIndex:1] intValue];
2864 UC[i].S_M.AP = [[items objectAtIndex:2] intValue];
2865 UC[i].S_M.WT = [[items objectAtIndex:3] intValue];
2866 UC[i].S_M.BP = [[items objectAtIndex:4] intValue];
2868 items = [[fileDataArray objectAtIndex:5] componentsSeparatedByString:@","];
2870 UC[i].S_M.STR = [[items objectAtIndex:0] intValue];
2871 UC[i].S_M.VIT = [[items objectAtIndex:1] intValue];
2872 UC[i].S_M.AGI = [[items objectAtIndex:2] intValue];
2873 UC[i].S_M.DEX = [[items objectAtIndex:3] intValue];
2874 UC[i].S_M.MEN = [[items objectAtIndex:4] intValue];
2875 UC[i].S_M.INT = [[items objectAtIndex:5] intValue];
2876 UC[i].S_M.LUK = [[items objectAtIndex:6] intValue];
2877 UC[i].S_M.MOV = [[items objectAtIndex:7] intValue];
2879 items = [[fileDataArray objectAtIndex:6] componentsSeparatedByString:@","];
2881 UC[i].S_M.MEL = [[items objectAtIndex:0] intValue];
2882 UC[i].S_M.MIS = [[items objectAtIndex:1] intValue];
2883 UC[i].S_M.HIT = [[items objectAtIndex:2] intValue];
2884 UC[i].S_M.DOD = [[items objectAtIndex:3] intValue];
2885 UC[i].S_M.REA = [[items objectAtIndex:4] intValue];
2886 UC[i].S_M.SKI = [[items objectAtIndex:5] intValue];
2888 items = [[fileDataArray objectAtIndex:7] componentsSeparatedByString:@","];
2890 UC[i].S_M.ATK = [[items objectAtIndex:0] intValue];
2891 UC[i].S_M.DEF = [[items objectAtIndex:1] intValue];
2892 UC[i].S_M.CAP = [[items objectAtIndex:2] intValue];
2893 UC[i].S_M.ACU = [[items objectAtIndex:3] intValue];
2894 UC[i].S_M.EVA = [[items objectAtIndex:4] intValue];
2896 items = [[fileDataArray objectAtIndex:8] componentsSeparatedByString:@","];
2898 UC[i].S_M.typeMONS = [[items objectAtIndex:0] intValue];
2899 UC[i].S_M.typeMOVE = [[items objectAtIndex:1] intValue];
2900 UC[i].S_M.cSupply = [[items objectAtIndex:2] intValue];
2901 UC[i].S_M.cFood = [[items objectAtIndex:3] intValue];
2902 UC[i].S_M.cMoney = [[items objectAtIndex:4] intValue];
2903 UC[i].S_M.cWT = [[items objectAtIndex:5] intValue];
2905 items = [[fileDataArray objectAtIndex:9] componentsSeparatedByString:@","];
2907 UC[i].R_M.blow = [[items objectAtIndex:0] intValue];
2908 UC[i].R_M.slash = [[items objectAtIndex:1] intValue];
2909 UC[i].R_M.stub = [[items objectAtIndex:2] intValue];
2910 UC[i].R_M.arrow = [[items objectAtIndex:3] intValue];
2911 UC[i].R_M.gun = [[items objectAtIndex:4] intValue];
2912 UC[i].R_M.shell = [[items objectAtIndex:5] intValue];
2914 UC[i].R_M.flame = [[items objectAtIndex:6] intValue];
2915 UC[i].R_M.cold = [[items objectAtIndex:7] intValue];
2916 UC[i].R_M.electoric = [[items objectAtIndex:8] intValue];
2917 UC[i].R_M.air = [[items objectAtIndex:9] intValue];
2918 UC[i].R_M.water = [[items objectAtIndex:10] intValue];
2919 UC[i].R_M.gas = [[items objectAtIndex:11] intValue];
2920 UC[i].R_M.holy = [[items objectAtIndex:12] intValue];
2921 UC[i].R_M.dark = [[items objectAtIndex:13] intValue];
2922 UC[i].R_M.explosion = [[items objectAtIndex:14] intValue];
2923 UC[i].R_M.blood = [[items objectAtIndex:15] intValue];
2925 UC[i].R_M.paralysis = [[items objectAtIndex:16] intValue];
2926 UC[i].R_M.confusion = [[items objectAtIndex:17] intValue];
2927 UC[i].R_M.poison = [[items objectAtIndex:18] intValue];
2928 UC[i].R_M.sleep = [[items objectAtIndex:19] intValue];
2929 UC[i].R_M.charm = [[items objectAtIndex:20] intValue];
2930 UC[i].R_M.silent = [[items objectAtIndex:21] intValue];
2932 items = [[fileDataArray objectAtIndex:10] componentsSeparatedByString:@","];
2934 UC[i].iName = [[items objectAtIndex:0] retain];
2935 //NSLog(@"%@", UC[i].iName);
2936 UC[i].iNameb = [[items objectAtIndex:1] retain];
2938 NSString *imgName = @"ucb";
2939 imgName = [imgName stringByAppendingFormat:@"%d", i+1];
2940 UC[i].img = [[NSImage imageNamed:imgName] retain];
2943 imgName = [NSString stringWithFormat:@"ucb"];
2944 imgName = [imgName stringByAppendingFormat:@"%d", i+1];
2945 UC[i].imgb = [[NSImage imageNamed:imgName] retain];
2947 NSString *imagePath = @"data/UnitChip/img/uc";
2948 imagePath = [imagePath stringByAppendingFormat:@"%d", i+1];
2949 NSData *imgData = [NSData dataWithContentsOfFile:imagePath];
2952 UC[i].img = [[NSImage alloc] initWithData:[[NSFileHandle fileHandleForReadingAtPath:imagePath] readDataToEndOfFile]];
2954 imagePath = [NSString stringWithFormat:@"data/UnitChip/img/ucb"];
2955 imagePath = [imagePath stringByAppendingFormat:@"%d", i+1];
2956 imgData = [NSData dataWithContentsOfFile:imagePath];
2959 UC[i].imgb = [[NSImage alloc] initWithData:[[NSFileHandle fileHandleForReadingAtPath:imagePath] readDataToEndOfFile]];
2962 UC[i].S_C = UC[i].S_M;
2963 UC[i].R_C = UC[i].R_M;
2965 SKILL *SKtop = NULL;
2967 for (int k = 12;![[fileDataArray objectAtIndex:k] isEqualToString:@"----"];k++) {
2968 items = [[fileDataArray objectAtIndex:k] componentsSeparatedByString:@","];
2969 if(k == 12) {UC[i].S = calloc(1, sizeof(SKILL));
2973 UC[i].S->type = [[items objectAtIndex:0] intValue];
2978 for(int l= 0;[items count] > 1+l;l++){
2980 UC[i].S->list[ins1] = [[items objectAtIndex:1+l] intValue];
2984 UC[i].S->cost[ins2] = [[items objectAtIndex:1+l] intValue];
2988 UC[i].S->Lv[ins3] = [[items objectAtIndex:1+l] intValue];
2993 UC[i].S->next = calloc(1, sizeof(SKILL));
2994 if(![[fileDataArray objectAtIndex:k+1] isEqualToString:@"----"]) UC[i].S = UC[i].S->next;
2996 if(UC[i].S) UC[i].S->next = NULL;
3000 for (int k = 12;![[fileDataArray objectAtIndex:k] isEqualToString:@"----"];k++) {
3004 items = [[fileDataArray objectAtIndex:oopStart+1] componentsSeparatedByString:@","];
3006 UC[i].CM.A = [[items objectAtIndex:0] intValue];
3007 UC[i].CM.B = [[items objectAtIndex:1] intValue];
3008 UC[i].CM.C = [[items objectAtIndex:2] intValue];
3009 UC[i].CM.D = [[items objectAtIndex:3] intValue];
3011 items = [[fileDataArray objectAtIndex:oopStart+3] componentsSeparatedByString:@","];
3013 if([[items objectAtIndex:0] intValue] >= 0){
3014 UC[i].eHandL = EQ[[[items objectAtIndex:0] intValue]];
3015 UC[i].eHandL.A = EQ[[[items objectAtIndex:0] intValue]].A;
3016 UC[i].eHandLflag = true;
3017 if(UC[i].eHandL.type == 7)
3018 UC[i].eHandRflag = true;
3020 if([[items objectAtIndex:1] intValue] >= 0){
3021 UC[i].eHandR = EQ[[[items objectAtIndex:1] intValue]];
3022 UC[i].eHandR.A = EQ[[[items objectAtIndex:1] intValue]].A;
3023 UC[i].eHandRflag = true;
3024 if(UC[i].eHandR.type == 7)
3025 UC[i].eHandLflag = true;
3027 if([[items objectAtIndex:2] intValue] >= 0){
3028 UC[i].eHead = EQ[[[items objectAtIndex:2] intValue]];
3029 UC[i].eHeadflag = true;
3031 if([[items objectAtIndex:3] intValue] >= 0){
3032 UC[i].eBody = EQ[[[items objectAtIndex:3] intValue]];
3033 UC[i].eBodyflag = true;
3035 if([[items objectAtIndex:4] intValue] >= 0){
3036 UC[i].eFoot = EQ[[[items objectAtIndex:4] intValue]];
3037 UC[i].eFootflag = true;
3039 if([[items objectAtIndex:5] intValue] >= 0){
3040 UC[i].eArm = EQ[[[items objectAtIndex:5] intValue]];
3041 UC[i].eArmflag = true;
3044 items = [[fileDataArray objectAtIndex:oopStart+4] componentsSeparatedByString:@","];
3047 items = [[fileDataArray objectAtIndex:oopStart+5] componentsSeparatedByString:@","];
3057 NSString *directoryPath;
3059 directoryPath = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
3060 [[NSFileManager defaultManager] changeCurrentDirectoryPath:directoryPath];
3063 cwd = getcwd(NULL, 0);
3067 for (int i=0; i<chipNumb; i++) {
3068 NSString *fdata = @"data/UnitChip/UCdata";
3069 fdata = [fdata stringByAppendingFormat:@"%d.txt", i+1];
3071 NSString *fileData = @"";
3073 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", UC[i].name]] stringByAppendingString:@"\n"];
3074 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", UC[i].nameNick]] stringByAppendingString:@"\n"];
3075 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", UC[i].nameClass]] stringByAppendingString:@"\n"];
3076 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", UC[i].nameRecognition]] stringByAppendingString:@","];
3077 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", UC[i].nameID]] stringByAppendingString:@","];
3078 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].aura]] stringByAppendingString:@"\n"];
3079 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.HP]] stringByAppendingString:@","];
3080 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.MP]] stringByAppendingString:@","];
3081 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.AP]] stringByAppendingString:@","];
3082 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.WT]] stringByAppendingString:@","];
3083 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.BP]] stringByAppendingString:@"\n"];
3084 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.STR]] stringByAppendingString:@","];
3085 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.VIT]] stringByAppendingString:@","];
3086 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.AGI]] stringByAppendingString:@","];
3087 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.DEX]] stringByAppendingString:@","];
3088 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.MEN]] stringByAppendingString:@","];
3089 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.INT]] stringByAppendingString:@","];
3090 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.LUK]] stringByAppendingString:@","];
3091 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].S_M.MOV]] stringByAppendingString:@"\n"];
3092 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.MEL]] stringByAppendingString:@","];
3093 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.MIS]] stringByAppendingString:@","];
3094 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.HIT]] stringByAppendingString:@","];
3095 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.DOD]] stringByAppendingString:@","];
3096 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.REA]] stringByAppendingString:@","];
3097 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.SKI]] stringByAppendingString:@"\n"];
3098 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.ATK]] stringByAppendingString:@","];
3099 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.DEF]] stringByAppendingString:@","];
3100 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.CAP]] stringByAppendingString:@","];
3101 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.ACU]] stringByAppendingString:@","];
3102 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].S_M.EVA]] stringByAppendingString:@"\n"];
3103 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].S_M.typeMONS]] stringByAppendingString:@","];
3104 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].S_M.typeMOVE]] stringByAppendingString:@","];
3105 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].S_M.cSupply]] stringByAppendingString:@","];
3106 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].S_M.cFood]] stringByAppendingString:@","];
3107 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].S_M.cMoney]] stringByAppendingString:@","];
3108 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].S_M.cWT]] stringByAppendingString:@"\n"];
3109 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.blow]] stringByAppendingString:@","];
3110 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.slash]] stringByAppendingString:@","];
3111 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.stub]] stringByAppendingString:@","];
3112 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.arrow]] stringByAppendingString:@","];
3113 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.gun]] stringByAppendingString:@","];
3114 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.shell]] stringByAppendingString:@","];
3115 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.flame]] stringByAppendingString:@","];
3116 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.cold]] stringByAppendingString:@","];
3117 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.electoric]] stringByAppendingString:@","];
3118 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.air]] stringByAppendingString:@","];
3119 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.water]] stringByAppendingString:@","];
3120 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.gas]] stringByAppendingString:@","];
3121 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.holy]] stringByAppendingString:@","];
3122 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.dark]] stringByAppendingString:@","];
3123 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.explosion]] stringByAppendingString:@","];
3124 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.blood]] stringByAppendingString:@","];
3125 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.paralysis]] stringByAppendingString:@","];
3126 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.confusion]] stringByAppendingString:@","];
3127 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.poison]] stringByAppendingString:@","];
3128 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.sleep]] stringByAppendingString:@","];
3129 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.charm]] stringByAppendingString:@","];
3130 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].R_M.silent]] stringByAppendingString:@"\n"];
3131 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", UC[i].iName]] stringByAppendingString:@","];
3132 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", UC[i].iNameb]] stringByAppendingString:@"\n"];
3134 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@"----\n"]];
3140 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].S->type]];
3141 for (int j = 0;UC[i].S->list[j] > 0;j++) {
3142 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",%d", UC[i].S->list[j]]];
3143 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",%g", UC[i].S->cost[j]]];
3144 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",%d", UC[i].S->Lv[j]]];
3146 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@"\n"]];
3147 UC[i].S = UC[i].S->next;
3152 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@"----\n"]];
3154 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].CM.A]];
3155 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",%d", UC[i].CM.B]];
3156 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",%d", UC[i].CM.C]];
3157 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",%d", UC[i].CM.D]];
3158 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@"\n"]];
3160 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@"----\n"]];
3163 if(UC[i].eHandL.nameID){
3164 for(int j = 0;j < eItemNum;j++){
3165 if([UC[i].eHandL.nameID isEqualToString:EQ[j].nameID]){
3166 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@"%d",j]];
3170 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@"-1"]];
3173 if(UC[i].eHandR.nameID){
3174 for(int j = 0;j < eItemNum;j++){
3175 if([UC[i].eHandR.nameID isEqualToString:EQ[j].nameID]){
3176 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",%d",j]];
3180 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",-1"]];
3183 if(UC[i].eHead.nameID){
3184 for(int j = 0;j < eItemNum;j++){
3185 if([UC[i].eHead.nameID isEqualToString:EQ[j].nameID]){
3186 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",%d",j]];
3190 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",-1"]];
3193 if(UC[i].eBody.nameID){
3194 for(int j = 0;j < eItemNum;j++){
3195 if([UC[i].eBody.nameID isEqualToString:EQ[j].nameID]){
3196 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",%d",j]];
3200 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",-1"]];
3203 if(UC[i].eFoot.nameID){
3204 for(int j = 0;j < eItemNum;j++){
3205 if([UC[i].eFoot.nameID isEqualToString:EQ[j].nameID]){
3206 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",%d",j]];
3210 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",-1"]];
3213 if(UC[i].eArm.nameID){
3214 for(int j = 0;j < eItemNum;j++){
3215 if([UC[i].eArm.nameID isEqualToString:EQ[j].nameID]){
3216 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",%d",j]];
3220 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@",-1"]];
3223 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@"\n"]];
3226 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@"装飾品\n"]];
3228 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@"消耗品\n"]];
3230 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@"----\n"]];
3232 [fileData writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
3235 NSData *f2Data = [UC[i].img TIFFRepresentation];
3236 NSBitmapImageRep *brep = [NSBitmapImageRep imageRepWithData:f2Data];
3237 f2Data = [brep representationUsingType:NSPNGFileType properties:nil];
3239 NSString *bcPath = @"data/UnitChip/img/uc";
3240 bcPath = [bcPath stringByAppendingFormat:@"%d", i + 1];
3242 [f2Data writeToFile:bcPath atomically:YES];
3246 NSData *f2Data = [UC[i].imgb TIFFRepresentation];
3247 NSBitmapImageRep *brep = [NSBitmapImageRep imageRepWithData:f2Data];
3248 f2Data = [brep representationUsingType:NSPNGFileType properties:nil];
3250 NSString *bcPath = @"data/UnitChip/img/ucb";
3251 bcPath = [bcPath stringByAppendingFormat:@"%d", i + 1];
3253 [f2Data writeToFile:bcPath atomically:YES];
3263 NSString *directoryPath;
3265 directoryPath = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
3266 [[NSFileManager defaultManager] changeCurrentDirectoryPath:directoryPath];
3269 for (int i=0; i<chipNumb; i++) {
3270 NSString *fdata = @"data/AttackList/ALdata";
3271 fdata = [fdata stringByAppendingFormat:@"%d.txt", i+1];
3273 NSString *fileData = @"";
3275 ATTACK *aTop = UC[i].A;
3278 if(Acnt > 0) fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"--------"]] stringByAppendingString:@"\n"];
3280 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", UC[i].A->name]] stringByAppendingString:@","];
3281 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->indexE]] stringByAppendingString:@"\n"];
3282 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->trig]] stringByAppendingString:@","];
3283 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->type]] stringByAppendingString:@","];
3284 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->melee]] stringByAppendingString:@","];
3285 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->P]] stringByAppendingString:@","];
3286 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->fixType]] stringByAppendingString:@"\n"];
3288 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->rangeA]] stringByAppendingString:@","];
3289 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->rangeB]] stringByAppendingString:@","];
3290 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->extent]] stringByAppendingString:@","];
3291 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->bullet]] stringByAppendingString:@","];
3292 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->hitCount]] stringByAppendingString:@","];
3293 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->successRate]] stringByAppendingString:@","];
3294 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->vigor]] stringByAppendingString:@","];
3295 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->hitPercent]] stringByAppendingString:@"\n"];
3297 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->costType]] stringByAppendingString:@","];
3298 if(UC[i].A->costType == 0){
3299 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].A->MP]] stringByAppendingString:@","];
3300 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->pMP]] stringByAppendingString:@","];
3301 }else if(UC[i].A->costType == 1){
3302 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].A->AP]] stringByAppendingString:@","];
3303 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->pAP]] stringByAppendingString:@","];
3304 }else if(UC[i].A->costType == 2){
3305 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].A->HP]] stringByAppendingString:@","];
3306 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->pHP]] stringByAppendingString:@","];
3308 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->cSupply]] stringByAppendingString:@","];
3309 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->cFood]] stringByAppendingString:@","];
3310 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->cMoney]] stringByAppendingString:@"\n"];
3312 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->riku]] stringByAppendingString:@","];
3313 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->chu]] stringByAppendingString:@","];
3314 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->umi]] stringByAppendingString:@","];
3315 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->sora]] stringByAppendingString:@","];
3316 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->dmgExtend]] stringByAppendingString:@","];
3317 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->imagine]] stringByAppendingString:@"\n"];
3319 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@,%d", UC[i].A->cmd, UC[i].A->hasei]] stringByAppendingString:@"\n"];
3320 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@,%d", UC[i].A->AN.movName, UC[i].A->AN.frame]] stringByAppendingString:@"\n"];
3322 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"####"]] stringByAppendingString:@"\n"];
3323 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", UC[i].A->msg]] stringByAppendingString:@"\n"];
3325 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"----"]] stringByAppendingString:@"\n"];
3327 DAMAGE *dTop = UC[i].A->D;
3328 while (UC[i].A->D) {
3329 if(UC[i].A->D->count <= 0 && UC[i].A->D->sort == 0){
3333 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"####"]] stringByAppendingString:@"\n"];
3334 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->D->type]] stringByAppendingString:@","];
3335 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].A->D->count]] stringByAppendingString:@","];
3336 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", UC[i].A->D->pCount]] stringByAppendingString:@"\n"];
3338 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->D->seed]] stringByAppendingString:@","];
3339 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->D->sort]] stringByAppendingString:@","];
3340 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->D->continium]] stringByAppendingString:@","];
3341 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->D->absolute]] stringByAppendingString:@","];
3342 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->D->beam]] stringByAppendingString:@","];
3343 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->D->noSizeFix]] stringByAppendingString:@","];
3344 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->D->fix]] stringByAppendingString:@"\n"];
3346 UC[i].A->D = UC[i].A->D->next;
3349 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"----"]] stringByAppendingString:@"\n"];
3351 DMGEXTEND *eTop = UC[i].A->E;
3352 while (UC[i].A->E) {
3353 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"####"]] stringByAppendingString:@"\n"];
3354 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->E->rate]] stringByAppendingString:@","];
3355 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->E->hit]] stringByAppendingString:@","];
3356 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", UC[i].A->E->atkHit]] stringByAppendingString:@"\n"];
3358 UC[i].A->E = UC[i].A->E->next;
3362 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"----"]] stringByAppendingString:@"\n"];
3364 ANI *ani = UC[i].A->AN.ANI;
3370 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"(null)"]] stringByAppendingString:@","];
3372 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", ani->name]] stringByAppendingString:@","];
3374 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", ani->ax]] stringByAppendingString:@","];
3375 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", ani->ay]] stringByAppendingString:@","];
3377 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"(null)"]] stringByAppendingString:@"\n"];
3379 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", ani->names]] stringByAppendingString:@"\n"];
3387 UC[i].A = UC[i].A->next;
3394 [fileData writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
3401 NSString *directoryPath;
3403 directoryPath = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
3404 [[NSFileManager defaultManager] changeCurrentDirectoryPath:directoryPath];
3407 for (int i=0; i<LCN; i++) {
3408 NSString *fdata = @"data/AttackList2/LALdata";
3409 fdata = [fdata stringByAppendingFormat:@"%d.txt", i+1];
3411 NSString *fileData = @"";
3413 ATTACK *aTop = LC[i].A;
3417 if(Acnt > 0) fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"--------"]] stringByAppendingString:@"\n"];
3419 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", LC[i].A->name]] stringByAppendingString:@"\n"];
3420 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->trig]] stringByAppendingString:@","];
3421 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->type]] stringByAppendingString:@","];
3422 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->melee]] stringByAppendingString:@","];
3423 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->P]] stringByAppendingString:@"\n"];
3425 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->rangeA]] stringByAppendingString:@","];
3426 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->rangeB]] stringByAppendingString:@","];
3427 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->extent]] stringByAppendingString:@","];
3428 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->bullet]] stringByAppendingString:@","];
3429 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->hitCount]] stringByAppendingString:@","];
3430 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->successRate]] stringByAppendingString:@","];
3431 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->vigor]] stringByAppendingString:@","];
3432 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->hitPercent]] stringByAppendingString:@"\n"];
3434 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->costType]] stringByAppendingString:@","];
3435 if(LC[i].A->costType == 0){
3436 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", LC[i].A->EN]] stringByAppendingString:@","];
3437 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->pEN]] stringByAppendingString:@","];
3438 }else if(LC[i].A->costType == 1){
3439 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", LC[i].A->HP]] stringByAppendingString:@","];
3440 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->pHP]] stringByAppendingString:@","];
3442 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->cSupply]] stringByAppendingString:@","];
3443 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->cFood]] stringByAppendingString:@","];
3444 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->cMoney]] stringByAppendingString:@"\n"];
3446 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->riku]] stringByAppendingString:@","];
3447 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->chu]] stringByAppendingString:@","];
3448 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->umi]] stringByAppendingString:@","];
3449 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->sora]] stringByAppendingString:@","];
3450 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->dmgExtend]] stringByAppendingString:@","];
3451 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->imagine]] stringByAppendingString:@"\n"];
3453 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@,%d", LC[i].A->cmd, LC[i].A->hasei]] stringByAppendingString:@"\n"];
3456 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"####"]] stringByAppendingString:@"\n"];
3457 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", LC[i].A->msg]] stringByAppendingString:@"\n"];
3459 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"----"]] stringByAppendingString:@"\n"];
3461 DAMAGE *dTop = LC[i].A->D;
3462 while (LC[i].A->D) {
3463 if(LC[i].A->D->count <= 0 && LC[i].A->D->sort == 0){
3467 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"####"]] stringByAppendingString:@"\n"];
3468 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->D->type]] stringByAppendingString:@","];
3469 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", LC[i].A->D->count]] stringByAppendingString:@","];
3470 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", LC[i].A->D->pCount]] stringByAppendingString:@"\n"];
3472 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->D->seed]] stringByAppendingString:@","];
3473 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->D->sort]] stringByAppendingString:@","];
3474 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->D->continium]] stringByAppendingString:@","];
3475 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->D->absolute]] stringByAppendingString:@","];
3476 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->D->beam]] stringByAppendingString:@","];
3477 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->D->noSizeFix]] stringByAppendingString:@","];
3478 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->D->fix]] stringByAppendingString:@"\n"];
3480 LC[i].A->D = LC[i].A->D->next;
3483 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"----"]] stringByAppendingString:@"\n"];
3485 DMGEXTEND *eTop = LC[i].A->E;
3486 while (LC[i].A->E) {
3487 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"####"]] stringByAppendingString:@"\n"];
3488 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->E->rate]] stringByAppendingString:@","];
3489 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->E->hit]] stringByAppendingString:@","];
3490 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", LC[i].A->E->atkHit]] stringByAppendingString:@"\n"];
3492 LC[i].A->E = LC[i].A->E->next;
3495 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"----"]] stringByAppendingString:@"\n"];
3497 ANI *ani = UC[i].A->AN.ANI;
3503 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", ani->name]] stringByAppendingString:@","];
3505 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"(null)"]] stringByAppendingString:@","];
3507 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", ani->ax]] stringByAppendingString:@","];
3508 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", ani->ay]] stringByAppendingString:@","];
3510 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", ani->names]] stringByAppendingString:@"\n"];
3512 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"(null)"]] stringByAppendingString:@"\n"];
3520 UC[i].A = UC[i].A->next;
3527 [fileData writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
3532 -(void)saveDataALEQ{
3534 NSString *directoryPath;
3536 directoryPath = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
3537 [[NSFileManager defaultManager] changeCurrentDirectoryPath:directoryPath];
3540 for (int i=0; i<itemNumb; i++) {
3541 NSString *fdata = @"data/AttackList3/IALdata";
3542 fdata = [fdata stringByAppendingFormat:@"%d.txt", i+1];
3544 NSString *fileData = @"";
3546 ATTACK *aeTop = EQ[i].A;
3549 if(Acnt > 0) fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"--------"]] stringByAppendingString:@"\n"];
3551 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", EQ[i].A->name]] stringByAppendingString:@","];
3552 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->indexE]] stringByAppendingString:@"\n"];
3553 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->trig]] stringByAppendingString:@","];
3554 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->type]] stringByAppendingString:@","];
3555 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->melee]] stringByAppendingString:@","];
3556 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->P]] stringByAppendingString:@","];
3557 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->fixType]] stringByAppendingString:@"\n"];
3559 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->rangeA]] stringByAppendingString:@","];
3560 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->rangeB]] stringByAppendingString:@","];
3561 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->extent]] stringByAppendingString:@","];
3562 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->bullet]] stringByAppendingString:@","];
3563 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->hitCount]] stringByAppendingString:@","];
3564 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->successRate]] stringByAppendingString:@","];
3565 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->vigor]] stringByAppendingString:@","];
3566 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->hitPercent]] stringByAppendingString:@"\n"];
3568 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->costType]] stringByAppendingString:@","];
3569 if(EQ[i].A->costType == 0){
3570 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].A->MP]] stringByAppendingString:@","];
3571 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->pMP]] stringByAppendingString:@","];
3572 }else if(EQ[i].A->costType == 1){
3573 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].A->AP]] stringByAppendingString:@","];
3574 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->pAP]] stringByAppendingString:@","];
3575 }else if(EQ[i].A->costType == 2){
3576 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].A->HP]] stringByAppendingString:@","];
3577 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->pHP]] stringByAppendingString:@","];
3579 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->cSupply]] stringByAppendingString:@","];
3580 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->cFood]] stringByAppendingString:@","];
3581 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->cMoney]] stringByAppendingString:@"\n"];
3583 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->riku]] stringByAppendingString:@","];
3584 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->chu]] stringByAppendingString:@","];
3585 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->umi]] stringByAppendingString:@","];
3586 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->sora]] stringByAppendingString:@","];
3587 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->dmgExtend]] stringByAppendingString:@","];
3588 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->imagine]] stringByAppendingString:@"\n"];
3590 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@,%d", EQ[i].A->cmd, EQ[i].A->hasei]] stringByAppendingString:@"\n"];
3591 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@,%d", EQ[i].A->AN.movName, EQ[i].A->AN.frame]] stringByAppendingString:@"\n"];
3593 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"####"]] stringByAppendingString:@"\n"];
3594 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", EQ[i].A->msg]] stringByAppendingString:@"\n"];
3596 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"----"]] stringByAppendingString:@"\n"];
3598 DAMAGE *dTop = EQ[i].A->D;
3599 while (EQ[i].A->D) {
3600 if(EQ[i].A->D->count <= 0 && EQ[i].A->D->sort == 0){
3604 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"####"]] stringByAppendingString:@"\n"];
3605 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->D->type]] stringByAppendingString:@","];
3606 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].A->D->count]] stringByAppendingString:@","];
3607 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%g", EQ[i].A->D->pCount]] stringByAppendingString:@"\n"];
3609 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->D->seed]] stringByAppendingString:@","];
3610 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->D->sort]] stringByAppendingString:@","];
3611 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->D->continium]] stringByAppendingString:@","];
3612 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->D->absolute]] stringByAppendingString:@","];
3613 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->D->beam]] stringByAppendingString:@","];
3614 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->D->noSizeFix]] stringByAppendingString:@","];
3615 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->D->fix]] stringByAppendingString:@"\n"];
3617 EQ[i].A->D = EQ[i].A->D->next;
3620 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"----"]] stringByAppendingString:@"\n"];
3622 DMGEXTEND *eTop = EQ[i].A->E;
3623 while (EQ[i].A->E) {
3624 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"####"]] stringByAppendingString:@"\n"];
3625 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->E->rate]] stringByAppendingString:@","];
3626 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->E->hit]] stringByAppendingString:@","];
3627 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", EQ[i].A->E->atkHit]] stringByAppendingString:@"\n"];
3629 EQ[i].A->E = EQ[i].A->E->next;
3632 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"----"]] stringByAppendingString:@"\n"];
3634 ANI *ani = EQ[i].A->AN.ANI;
3639 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", ani->name]] stringByAppendingString:@","];
3640 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", ani->ax]] stringByAppendingString:@","];
3641 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%d", ani->ay]] stringByAppendingString:@","];
3642 fileData = [[fileData stringByAppendingString:[NSString stringWithFormat:@"%@", ani->names]] stringByAppendingString:@"\n"];
3649 EQ[i].A = EQ[i].A->next;
3656 [fileData writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
3662 -(void)initFileDirectoryItem{
3663 NSString *directoryPath;
3665 directoryPath = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
3666 [[NSFileManager defaultManager] changeCurrentDirectoryPath:directoryPath];
3669 cwd = getcwd(NULL, 0);
3672 NSData *InitialData = [NSData dataWithContentsOfFile:@"data/ItemList/preset.txt"];
3673 NSString *pathILI = @"data/ItemList/img";
3674 NSString *pathDATA2 = @"data/ItemList/preset.txt";
3675 NSString *pathIL = @"data/ItemList/preset.txt";
3676 NSString *fileData = nil;
3679 eItemNum = itemNumb;
3681 [[NSFileManager defaultManager] createDirectoryAtPath:pathILI withIntermediateDirectories:YES attributes:nil error:nil];
3682 [[NSFileManager defaultManager] createFileAtPath:pathDATA2 contents:nil attributes:nil];
3684 [[NSFileManager defaultManager] createFileAtPath:pathIL contents:nil attributes:nil];
3686 [[NSString stringWithFormat:@"%ld", itemNumb] writeToFile:pathIL atomically:YES encoding:NSUTF8StringEncoding error:nil];
3688 NSString *data1 = @"鉄の剣\n鉄の剣\neq1\n1000,30,2\n0,0,0,0,0\n32,0,0,0,0,0,0\n2,0,0,0,0,0,0\n0,0,0,0\n0,0,0,0,0,0,0,0,0,0,0,0\n0,0,0,0,0,0,0,0,0,0\n鉄で出来た剣\n----\n";
3689 NSString *data2 = @"鋼の剣\n鋼の剣\neq2\n1500,35,2\n0,0,0,0,0\n50,0,0,0,0,0,0\n2,0,0,0,0,0,0\n0,0,0,0\n0,0,0,0,0,0,0,0,0,0,0,0\n0,0,0,0,0,0,0,0,0,0\n鋼で出来た剣\n----\n";
3690 NSString *data3 = @"銀の剣\n銀の剣\neq3\n2000,40,2\n0,0,0,0,0\n90,0,0,0,0,0,0\n2,0,0,0,0,0,0\n0,0,0,0\n0,0,0,0,0,0,0,0,0,0,0,0\n0,0,0,0,0,0,0,0,0,0\n銀で出来た剣\n----\n";
3692 for (int i=1; i<=itemNumb; i++) {
3693 NSString *fdata = @"data/ItemList/ILdata";
3695 fdata = [fdata stringByAppendingFormat:@"%d.txt", i];
3699 [data1 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
3702 [data2 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
3705 [data3 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
3716 fileData = [NSString stringWithContentsOfFile:pathIL encoding:NSUTF8StringEncoding error:nil];
3717 fileDataArray = [fileData componentsSeparatedByString:@"\n"];
3718 int instantNum = [[fileDataArray objectAtIndex:0] intValue];
3720 itemNumb = instantNum;
3721 eItemNum = (int)itemNumb;
3723 for (int i=0; i< itemNumb; i++) {
3724 NSString *path = @"data/AttackList3/IALdata";
3726 path = [path stringByAppendingFormat:@"%dE", i+1];
3728 [[NSFileManager defaultManager] createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:nil];
3731 NSString *fdata = @"data/ItemList/ILdata";
3733 fdata = [fdata stringByAppendingFormat:@"%d.txt", i+1];
3735 fileData = [NSString stringWithContentsOfFile:fdata encoding:NSUTF8StringEncoding error:nil];
3736 fileDataArray = [fileData componentsSeparatedByString:@"\n"];
3738 EQ[i].name = [[fileDataArray objectAtIndex:0] retain];
3739 EQ[i].nameRecognition = [[fileDataArray objectAtIndex:1] retain];
3740 EQ[i].nameID = [[fileDataArray objectAtIndex:2] retain];
3742 NSArray *items = [[fileDataArray objectAtIndex:3] componentsSeparatedByString:@","];
3744 EQ[i].price = [[items objectAtIndex:0] intValue];
3745 EQ[i].Weight = [[items objectAtIndex:1] intValue];
3746 EQ[i].type = [[items objectAtIndex:2] intValue];
3748 items = [[fileDataArray objectAtIndex:4] componentsSeparatedByString:@","];
3750 EQ[i].HP = [[items objectAtIndex:0] intValue];
3751 EQ[i].MP = [[items objectAtIndex:1] intValue];
3752 EQ[i].AP = [[items objectAtIndex:2] intValue];
3753 EQ[i].WT = [[items objectAtIndex:3] intValue];
3754 EQ[i].MOV = [[items objectAtIndex:4] intValue];
3756 items = [[fileDataArray objectAtIndex:5] componentsSeparatedByString:@","];
3758 EQ[i].STR = [[items objectAtIndex:0] intValue];
3759 EQ[i].VIT = [[items objectAtIndex:1] intValue];
3760 EQ[i].AGI = [[items objectAtIndex:2] intValue];
3761 EQ[i].DEX = [[items objectAtIndex:3] intValue];
3762 EQ[i].MEN = [[items objectAtIndex:4] intValue];
3763 EQ[i].INT = [[items objectAtIndex:5] intValue];
3764 EQ[i].LUK = [[items objectAtIndex:6] intValue];
3766 items = [[fileDataArray objectAtIndex:6] componentsSeparatedByString:@","];
3768 EQ[i].pSTR = [[items objectAtIndex:0] intValue];
3769 EQ[i].pVIT = [[items objectAtIndex:1] intValue];
3770 EQ[i].pAGI = [[items objectAtIndex:2] intValue];
3771 EQ[i].pDEX = [[items objectAtIndex:3] intValue];
3772 EQ[i].pMEN = [[items objectAtIndex:4] intValue];
3773 EQ[i].pINT = [[items objectAtIndex:5] intValue];
3774 EQ[i].pLUK = [[items objectAtIndex:6] intValue];
3776 items = [[fileDataArray objectAtIndex:7] componentsSeparatedByString:@","];
3778 EQ[i].recHP = [[items objectAtIndex:0] intValue];
3779 EQ[i].recpHP = [[items objectAtIndex:1] intValue];
3780 EQ[i].recMP = [[items objectAtIndex:2] intValue];
3781 EQ[i].recpMP = [[items objectAtIndex:3] intValue];
3783 items = [[fileDataArray objectAtIndex:8] componentsSeparatedByString:@","];
3785 EQ[i].R.blow = [[items objectAtIndex:0] intValue];
3786 EQ[i].R.slash = [[items objectAtIndex:1] intValue];
3787 EQ[i].R.stub = [[items objectAtIndex:2] intValue];
3788 EQ[i].R.arrow = [[items objectAtIndex:3] intValue];
3789 EQ[i].R.gun = [[items objectAtIndex:4] intValue];
3790 EQ[i].R.shell = [[items objectAtIndex:5] intValue];
3791 EQ[i].R.paralysis = [[items objectAtIndex:6] intValue];
3792 EQ[i].R.poison = [[items objectAtIndex:7] intValue];
3793 EQ[i].R.charm = [[items objectAtIndex:8] intValue];
3794 EQ[i].R.confusion = [[items objectAtIndex:9] intValue];
3795 EQ[i].R.sleep = [[items objectAtIndex:10] intValue];
3796 EQ[i].R.silent = [[items objectAtIndex:11] intValue];
3798 items = [[fileDataArray objectAtIndex:9] componentsSeparatedByString:@","];
3800 EQ[i].R.flame = [[items objectAtIndex:0] intValue];
3801 EQ[i].R.cold = [[items objectAtIndex:1] intValue];
3802 EQ[i].R.electoric = [[items objectAtIndex:2] intValue];
3803 EQ[i].R.air = [[items objectAtIndex:3] intValue];
3804 EQ[i].R.water = [[items objectAtIndex:4] intValue];
3805 EQ[i].R.gas = [[items objectAtIndex:5] intValue];
3806 EQ[i].R.holy = [[items objectAtIndex:6] intValue];
3807 EQ[i].R.dark = [[items objectAtIndex:7] intValue];
3808 EQ[i].R.explosion = [[items objectAtIndex:8] intValue];
3809 EQ[i].R.blood = [[items objectAtIndex:9] intValue];
3811 EQ[i].comment = [[fileDataArray objectAtIndex:10] retain];
3818 -(void)initFileDirectoryCombo{
3819 NSString *directoryPath;
3821 directoryPath = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
3822 [[NSFileManager defaultManager] changeCurrentDirectoryPath:directoryPath];
3824 NSData *InitialData = [NSData dataWithContentsOfFile:@"data/ComboList/preset.txt"];
3825 NSString *pathCL = @"data/ComboList/preset.txt";
3826 NSString *path = @"data/ComboList";
3827 NSString *fileData = nil;
3830 fileData = [NSString stringWithContentsOfFile:pathCL encoding:NSUTF8StringEncoding error:nil];
3831 fileDataArray = [fileData componentsSeparatedByString:@"\n"];
3832 int instantNum = [[fileDataArray objectAtIndex:0] intValue];
3834 comboItemNumb = instantNum;
3835 CLN = (int)comboItemNumb;
3837 [[NSFileManager defaultManager] createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:nil];
3838 [[NSFileManager defaultManager] createFileAtPath:pathCL contents:nil attributes:nil];
3839 [[NSString stringWithFormat:@"%d", UCN] writeToFile:pathCL atomically:YES encoding:NSUTF8StringEncoding error:nil];
3841 comboItemNumb = UCN;
3842 CLN = (int)comboItemNumb;
3843 NSString *data1 = @"A>A>A\nA>A>B";
3845 NSString *data2 = @"A>A>B\nA>A>C";
3847 for (int i=1; i<=UCN; i++) {
3848 NSString *fdata = @"data/ComboList/CLdata";
3850 fdata = [fdata stringByAppendingFormat:@"%d.txt", i];
3854 [data1 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
3857 [data2 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
3863 [@"" writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
3867 NSArray *fileDataArray2;
3868 for (int i = 0; i< CLN; i++){
3869 COMBO *COtop = UC[i].CM.co;
3871 NSString *fdata = @"data/ComboList/CLdata";
3873 fdata = [fdata stringByAppendingFormat:@"%d.txt", i+1];
3875 fileData = [NSString stringWithContentsOfFile:fdata encoding:NSUTF8StringEncoding error:nil];
3876 fileDataArray2 = [fileData componentsSeparatedByString:@"\n"];
3879 for(int k = 0;k < [fileDataArray2 count] && ![[fileDataArray2 objectAtIndex:k] isEqualToString:@""];k++){
3881 UC[i].CM.co = calloc(1, sizeof(COMBO));
3882 COtop = UC[i].CM.co;
3885 UC[i].CM.co->mbo = [[fileDataArray2 objectAtIndex:k] retain];
3887 UC[i].CM.co->next = calloc(1, sizeof(COMBO));
3888 UC[i].CM.co = UC[i].CM.co->next;
3893 UC[i].CM.co = COtop;
3901 NSString *directoryPath;
3903 directoryPath = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
3904 [[NSFileManager defaultManager] changeCurrentDirectoryPath:directoryPath];
3907 cwd = getcwd(NULL, 0);
3911 for (int i=0; i<CLN; i++) {
3912 NSString *fdata = @"data/ComboList/CLdata";
3913 fdata = [fdata stringByAppendingFormat:@"%d.txt", i+1];
3915 NSString *fileData = @"";
3917 COMBO *cTop = UC[i].CM.co;
3921 fileData = [fileData stringByAppendingString:@"\n"];
3923 fileData = [fileData stringByAppendingString:[NSString stringWithFormat:@"%@", UC[i].CM.co->mbo]];
3926 UC[i].CM.co = UC[i].CM.co->next;
3927 }UC[i].CM.co = cTop;
3929 [fileData writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
3934 -(void)initFileDirectoryAttack{
3935 NSString *directoryPath;
3937 directoryPath = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
3938 [[NSFileManager defaultManager] changeCurrentDirectoryPath:directoryPath];
3941 cwd = getcwd(NULL, 0);
3944 NSData *InitialData = [NSData dataWithContentsOfFile:@"data/AttackList/preset.txt"];
3945 NSString *pathALI = @"data/AttackList/img";
3946 NSString *pathDATA2 = @"data/AttackList/preset.txt";
3947 NSString *pathAL = @"data/AttackList/preset.txt";
3948 NSString *fileData = nil;
3950 itemNumb = [unitChipListMA count];
3952 [[NSFileManager defaultManager] createDirectoryAtPath:pathALI withIntermediateDirectories:YES attributes:nil error:nil];
3953 [[NSFileManager defaultManager] createFileAtPath:pathDATA2 contents:nil attributes:nil];
3955 [[NSFileManager defaultManager] createFileAtPath:pathAL contents:nil attributes:nil];
3959 for (int i=1; i<=itemNumb; i++) {
3960 NSString *fdata = @"data/AttackList/ALdata";
3962 fdata = [fdata stringByAppendingFormat:@"%d.txt", i];
3974 NSArray *fileDataArray2;
3976 for (int i=0; i< itemNumb; i++) {
3977 NSString *fdata = @"data/AttackList/ALdata";
3979 fdata = [fdata stringByAppendingFormat:@"%d.txt", i+1];
3981 fileData = [NSString stringWithContentsOfFile:fdata encoding:NSUTF8StringEncoding error:nil];
3982 fileDataArray2 = [fileData componentsSeparatedByString:@"--------\n"];
3984 bool initAttackAdd = false;
3986 if(fileData == 0x00007fff7e19dfa0) continue;
3988 if([fileDataArray2 count] <= 0) continue;
3992 for(int j=0;j < [fileDataArray2 count];j++){
3993 if(![[fileDataArray2 objectAtIndex:0] isEqualToString:@""]) UC[i].attackListNum++;
3994 fileDataArray = [[fileDataArray2 objectAtIndex:j] componentsSeparatedByString:@"\n"];
3996 if([[fileDataArray objectAtIndex:0] isEqualToString:@""]) break;
3999 [self AddATTACK:&UC[i].A :0];
4001 [self AddATTACK:&UC[i].A :j];
4003 if(!initAttackAdd) {
4006 initAttackAdd = true;
4008 NSArray *items = [[fileDataArray objectAtIndex:0] componentsSeparatedByString:@","];
4009 UC[i].A->name = [[items objectAtIndex:0] retain];
4010 UC[i].A->indexE = 0;
4012 if([fileDataArray count] <= 1) continue;
4013 items = [[fileDataArray objectAtIndex:1] componentsSeparatedByString:@","];
4015 UC[i].A->trig = [[items objectAtIndex:0] intValue];
4016 UC[i].A->type = [[items objectAtIndex:1] intValue];
4017 UC[i].A->melee = [[items objectAtIndex:2] intValue];
4018 UC[i].A->P = [[items objectAtIndex:3] intValue];
4020 items = [[fileDataArray objectAtIndex:2] componentsSeparatedByString:@","];
4022 UC[i].A->rangeA = [[items objectAtIndex:0] intValue];
4023 UC[i].A->rangeB = [[items objectAtIndex:1] intValue];
4024 UC[i].A->extent = [[items objectAtIndex:2] intValue];
4025 UC[i].A->bullet = [[items objectAtIndex:3] intValue];
4026 UC[i].A->hitCount = [[items objectAtIndex:4] intValue];
4027 UC[i].A->successRate = [[items objectAtIndex:5] intValue];
4028 UC[i].A->vigor = [[items objectAtIndex:6] intValue];
4029 UC[i].A->hitPercent = [[items objectAtIndex:7] intValue];
4031 items = [[fileDataArray objectAtIndex:3] componentsSeparatedByString:@","];
4033 UC[i].A->costType = [[items objectAtIndex:0] intValue];
4035 if(UC[i].A->costType == 0) {
4036 UC[i].A->MP = [[items objectAtIndex:1] intValue];
4037 UC[i].A->pMP = [[items objectAtIndex:2] intValue];
4039 else if(UC[i].A->costType == 1) {
4040 UC[i].A->AP = [[items objectAtIndex:1] intValue];
4041 UC[i].A->pAP = [[items objectAtIndex:2] intValue];
4043 else if(UC[i].A->costType == 2) {
4044 UC[i].A->HP = [[items objectAtIndex:1] intValue];
4045 UC[i].A->pHP = [[items objectAtIndex:2] intValue];
4048 UC[i].A->cSupply = [[items objectAtIndex:3] intValue];
4049 UC[i].A->cFood = [[items objectAtIndex:4] intValue];
4050 UC[i].A->cMoney = [[items objectAtIndex:5] intValue];
4052 items = [[fileDataArray objectAtIndex:4] componentsSeparatedByString:@","];
4054 UC[i].A->riku = [[items objectAtIndex:0] intValue];
4055 UC[i].A->chu = [[items objectAtIndex:1] intValue];
4056 UC[i].A->umi = [[items objectAtIndex:2] intValue];
4057 UC[i].A->sora = [[items objectAtIndex:3] intValue];
4058 UC[i].A->dmgExtend = [[items objectAtIndex:4] intValue];
4059 UC[i].A->imagine = [[items objectAtIndex:5] intValue];
4061 items = [[fileDataArray objectAtIndex:5] componentsSeparatedByString:@","];
4063 UC[i].A->cmd = [[items objectAtIndex:0] retain];
4064 if([items count] >= 2)
4065 UC[i].A->hasei = [[items objectAtIndex:1] intValue];
4067 items = [[fileDataArray objectAtIndex:6] componentsSeparatedByString:@","];
4069 if(![[items objectAtIndex:0] isEqualToString:@"(null)"])
4070 UC[i].A->AN.movName = [[items objectAtIndex:0] retain];
4071 else UC[i].A->AN.movName = @"";
4072 UC[i].A->AN.frame = [[items objectAtIndex:1] intValue];
4075 //[self AddDAMAGE:&UC[i].A->D :0];
4076 //[self AddDMGEXTEND:&UC[i].A->E :0];
4078 DAMAGE *Dtop = UC[i].A->D;
4079 DMGEXTEND *Etop = UC[i].A->E;
4082 static bool omfgFlag;
4085 int stringRange = 1;
4086 int stringNumber = 0;
4087 for (int k = 7; k<[fileDataArray count];k++) {
4088 NSString *str = [fileDataArray objectAtIndex:k];
4089 NSRange rangeSearch, rangeSearch2, rangeSearch9;
4090 NSArray *rangeArray;
4091 rangeSearch = [str rangeOfString:@"####"];
4092 rangeArray = [str componentsSeparatedByString:@","];
4093 rangeSearch2 = [str rangeOfString:@"----"];
4094 rangeSearch9 = [str rangeOfString:@""];
4096 static int omg2 = 0;
4097 static int omg3 = 0;
4099 if(k == [fileDataArray count] - 1){
4104 if (rangeSearch.location != NSNotFound) {
4105 }else if(rangeSearch2.location != NSNotFound){
4109 if(UC[i].A->msg == NULL){
4110 UC[i].A->msg = [str retain];
4112 if(omfgFlag) UC[i].A->msg = [[UC[i].A->msg stringByAppendingFormat:@"\n"] retain];
4113 UC[i].A->msg = [[UC[i].A->msg stringByAppendingFormat:@"%@", str] retain];
4116 }else if(stringType == 1){stringRange ++;
4117 if(rangeSearch2.location != NSNotFound){
4120 else if(rangeSearch.location != NSNotFound){
4122 }else if(stringRange == 1){
4124 [self AddDAMAGE:&UC[i].A->D :0];
4128 UC[i].A->D->type = [[rangeArray objectAtIndex:0] intValue];
4129 UC[i].A->D->count = [[rangeArray objectAtIndex:1] intValue];
4130 UC[i].A->D->pCount = [[rangeArray objectAtIndex:2] intValue];
4131 }else if(stringRange == 2){
4133 UC[i].A->D->seed = [[rangeArray objectAtIndex:0] intValue];
4134 UC[i].A->D->sort = [[rangeArray objectAtIndex:1] intValue];
4135 UC[i].A->D->continium = [[rangeArray objectAtIndex:2] intValue];
4136 UC[i].A->D->absolute = [[rangeArray objectAtIndex:3] intValue];
4137 UC[i].A->D->beam = [[rangeArray objectAtIndex:4] intValue];
4138 UC[i].A->D->noSizeFix = [[rangeArray objectAtIndex:5] intValue];
4139 UC[i].A->D->fix = [[rangeArray objectAtIndex:6] intValue];
4142 NSString *str2 = [fileDataArray objectAtIndex:k+1];
4143 NSRange rangeSearch3 = [str2 rangeOfString:@"####"];
4144 if(stringNumber >= 1 && rangeSearch3.location != NSNotFound) [self AddDAMAGE:&UC[i].A->D :stringNumber-1];
4145 UC[i].A->D = UC[i].A->D->next;
4147 }else if(stringType == 2){stringRange ++;
4149 if(rangeSearch2.location != NSNotFound){
4152 else if(rangeSearch.location != NSNotFound){
4155 }else if(stringRange == 1){stringNumber++;
4157 [self AddDMGEXTEND:&UC[i].A->E :0];
4161 UC[i].A->E->rate = [[rangeArray objectAtIndex:0] intValue];
4162 UC[i].A->E->hit = [[rangeArray objectAtIndex:2] intValue];
4163 UC[i].A->E->atkHit = [[rangeArray objectAtIndex:1] intValue];
4165 NSString *str2 = [fileDataArray objectAtIndex:k+1];
4166 NSRange rangeSearch3 = [str2 rangeOfString:@"####"];
4167 if(stringNumber >= 1 && rangeSearch3.location != NSNotFound) [self AddDMGEXTEND:&UC[i].A->E :stringNumber-1];
4169 UC[i].A->E = UC[i].A->E->next;
4172 }else if(stringType == 3){stringRange ++;
4173 //NSLog(@"%@", [fileDataArray objectAtIndex:k]);
4174 if([rangeArray count] == 1){
4179 ani = calloc(1, sizeof(ANI));
4180 ani->name = [[rangeArray objectAtIndex:0] retain];
4181 ani->ax = [[rangeArray objectAtIndex:1] intValue];
4182 ani->ay = [[rangeArray objectAtIndex:2] intValue];
4183 ani->names = [[rangeArray objectAtIndex:3] retain];
4186 [[NSFileManager defaultManager] changeCurrentDirectoryPath:[[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent]];
4188 NSString *path = @"data/AttackList/ALdata";
4190 path = [path stringByAppendingFormat:@"%dE", i+1];
4192 path = [path stringByAppendingFormat:@"/"];
4194 path = [path stringByAppendingString:ani->names];
4196 ani->snd = [[[NSSound alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] byReference:NO] retain];
4198 path = @"data/AttackList/ALdata";
4200 path = [path stringByAppendingFormat:@"%dE", i+1];
4202 path = [path stringByAppendingFormat:@"/"];
4204 path = [path stringByAppendingString:ani->name];
4206 ani->img = [[[NSImage alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path]] retain];
4213 ani->next = calloc(1, sizeof(ANI));
4214 if(omg3 == 1) aniTop = ani;
4217 ani->name = [[rangeArray objectAtIndex:0] retain];
4218 ani->ax = [[rangeArray objectAtIndex:1] intValue];
4219 ani->ay = [[rangeArray objectAtIndex:2] intValue];
4220 ani->names = [[rangeArray objectAtIndex:3] retain];
4222 [[NSFileManager defaultManager] changeCurrentDirectoryPath:[[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent]];
4224 NSString *path = @"data/AttackList/ALdata";
4226 path = [path stringByAppendingFormat:@"%dE", i+1];
4228 path = [path stringByAppendingFormat:@"/"];
4230 path = [path stringByAppendingString:ani->names];
4232 ani->snd = [[[NSSound alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] byReference:NO] retain];
4234 path = @"data/AttackList/ALdata";
4236 path = [path stringByAppendingFormat:@"%dE", i+1];
4238 path = [path stringByAppendingFormat:@"/"];
4240 path = [path stringByAppendingString:ani->name];
4242 ani->img = [[[NSImage alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path]] retain];
4250 UC[i].A->AN.ANI = ani;
4254 if([fileDataArray2 count]-1 > j) UC[i].A = UC[i].A->next;
4255 else UC[i].A->next = NULL;
4258 if(UC[i].attackListNum <= 0) {
4265 for (int i=0; i< itemNumb; i++)
4266 [self setTotalDamage:i row:<#(int)#>];
4270 -(void)initFileDirectoryAttack2{
4271 NSString *directoryPath;
4273 directoryPath = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
4274 [[NSFileManager defaultManager] changeCurrentDirectoryPath:directoryPath];
4277 cwd = getcwd(NULL, 0);
4280 NSData *InitialData = [NSData dataWithContentsOfFile:@"data/AttackList2/preset.txt"];
4281 NSString *pathALI = @"data/AttackList2/img";
4282 NSString *pathDATA2 = @"data/AttackList2/preset.txt";
4283 NSString *pathAL = @"data/AttackList2/preset.txt";
4284 NSString *fileData = nil;
4288 [[NSFileManager defaultManager] createDirectoryAtPath:pathALI withIntermediateDirectories:YES attributes:nil error:nil];
4289 [[NSFileManager defaultManager] createFileAtPath:pathDATA2 contents:nil attributes:nil];
4291 [[NSFileManager defaultManager] createFileAtPath:pathAL contents:nil attributes:nil];
4293 NSString *data1 = @"砲撃\n1,0,0,1\n1,3,0,10,1,100,0,30\n0,0,0,0,0,0\n0,0,0,0,0\nA\n####\n----\n####\n0,800,0\n5,0,0,0,0,0\n----\n####\n5,80,1\n--------\n";
4295 NSString *data2 = @"砲撃\n1,0,0,1\n1,3,0,0,20,100,0,30\n0,0,0,0,0,0\n0,0,0,0,0\nA\n####\n----\n####\n0,1000,0\n5,0,0,0,0,0\n----\n####\n4,100,1\n--------\n";
4298 for (int i=1; i<=itemNumb; i++) {
4299 NSString *fdata = @"data/AttackList2/LALdata";
4301 fdata = [fdata stringByAppendingFormat:@"%d.txt", i];
4305 [data1 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
4308 [data2 writeToFile:fdata atomically:YES encoding:NSUTF8StringEncoding error:nil];
4319 NSArray *fileDataArray2;
4321 for (int i=0; i< itemNumb; i++) {
4322 NSString *fdata = @"data/AttackList2/LALdata";
4324 fdata = [fdata stringByAppendingFormat:@"%d.txt", i+1];
4326 fileData = [NSString stringWithContentsOfFile:fdata encoding:NSUTF8StringEncoding error:nil];
4327 fileDataArray2 = [fileData componentsSeparatedByString:@"--------\n"];
4329 bool initAttackAdd = false;
4331 if(fileData == 0x00007fff7e19dfa0) continue;
4333 for(int j=0;j < [fileDataArray2 count];j++){
4334 if(![[fileDataArray2 objectAtIndex:0] isEqualToString:@""]) LC[i].attackListNum++;
4335 fileDataArray = [[fileDataArray2 objectAtIndex:j] componentsSeparatedByString:@"\n"];
4338 [self AddATTACK:&LC[i].A :0];
4340 [self AddATTACK:&LC[i].A :j];
4342 if(!initAttackAdd) {Atop = LC[i].A;}
4343 initAttackAdd = true;
4345 LC[i].A->name = [[fileDataArray objectAtIndex:0] retain];
4347 if([fileDataArray count] <= 1) continue;
4348 NSArray *items = [[fileDataArray objectAtIndex:1] componentsSeparatedByString:@","];
4350 LC[i].A->trig = [[items objectAtIndex:0] intValue];
4351 LC[i].A->type = [[items objectAtIndex:1] intValue];
4352 LC[i].A->melee = [[items objectAtIndex:2] intValue];
4353 LC[i].A->P = [[items objectAtIndex:3] intValue];
4355 items = [[fileDataArray objectAtIndex:2] componentsSeparatedByString:@","];
4357 LC[i].A->rangeA = [[items objectAtIndex:0] intValue];
4358 LC[i].A->rangeB = [[items objectAtIndex:1] intValue];
4359 LC[i].A->extent = [[items objectAtIndex:2] intValue];
4360 LC[i].A->bullet = [[items objectAtIndex:3] intValue];
4361 LC[i].A->hitCount = [[items objectAtIndex:4] intValue];
4362 LC[i].A->successRate = [[items objectAtIndex:5] intValue];
4363 LC[i].A->vigor = [[items objectAtIndex:6] intValue];
4364 LC[i].A->hitPercent = [[items objectAtIndex:7] intValue];
4366 items = [[fileDataArray objectAtIndex:3] componentsSeparatedByString:@","];
4368 LC[i].A->costType = [[items objectAtIndex:0] intValue];
4370 if(LC[i].A->costType == 0) {
4371 LC[i].A->EN = [[items objectAtIndex:1] intValue];
4372 LC[i].A->pEN = [[items objectAtIndex:2] intValue];
4374 else if(LC[i].A->costType == 1) {
4375 LC[i].A->HP = [[items objectAtIndex:1] intValue];
4376 LC[i].A->pHP = [[items objectAtIndex:2] intValue];
4379 LC[i].A->cSupply = [[items objectAtIndex:3] intValue];
4380 LC[i].A->cFood = [[items objectAtIndex:4] intValue];
4381 LC[i].A->cMoney = [[items objectAtIndex:5] intValue];
4383 items = [[fileDataArray objectAtIndex:4] componentsSeparatedByString:@","];
4385 LC[i].A->riku = [[items objectAtIndex:0] intValue];
4386 LC[i].A->chu = [[items objectAtIndex:1] intValue];
4387 LC[i].A->umi = [[items objectAtIndex:2] intValue];
4388 LC[i].A->sora = [[items objectAtIndex:3] intValue];
4389 LC[i].A->dmgExtend = [[items objectAtIndex:4] intValue];
4390 LC[i].A->imagine = [[items objectAtIndex:5] intValue];
4392 items = [[fileDataArray objectAtIndex:5] componentsSeparatedByString:@","];
4394 LC[i].A->cmd = [[items objectAtIndex:0] retain];
4395 if([items count] >= 2)
4396 LC[i].A->hasei = [[items objectAtIndex:1] intValue];
4399 //[self AddDAMAGE:&UC[i].A->D :0];
4400 //[self AddDMGEXTEND:&UC[i].A->E :0];
4402 DAMAGE *Dtop = LC[i].A->D;
4403 DMGEXTEND *Etop = LC[i].A->E;
4406 static bool omfgFlag;
4409 int stringRange = 1;
4410 int stringNumber = 0;
4411 for (int k = 6; k<[fileDataArray count];k++) {
4412 NSString *str = [fileDataArray objectAtIndex:k];
4413 NSRange rangeSearch, rangeSearch2;
4414 NSArray *rangeArray;
4415 rangeSearch = [str rangeOfString:@"####"];
4416 rangeArray = [str componentsSeparatedByString:@","];
4417 rangeSearch2 = [str rangeOfString:@"----"];
4419 static int omg2 = 0;
4420 static int omg3 = 0;
4421 if(k == [fileDataArray count] - 1){
4426 if (rangeSearch.location != NSNotFound) {
4427 }else if(rangeSearch2.location != NSNotFound){
4431 if(LC[i].A->msg == NULL){
4432 LC[i].A->msg = [str retain];
4434 if(omfgFlag) LC[i].A->msg = [[LC[i].A->msg stringByAppendingFormat:@"\n"] retain];
4435 LC[i].A->msg = [[LC[i].A->msg stringByAppendingFormat:@"%@", str] retain];
4438 }else if(stringType == 1){stringRange ++;
4439 if(rangeSearch2.location != NSNotFound){
4442 else if(rangeSearch.location != NSNotFound){
4444 }else if(stringRange == 1){
4446 [self AddDAMAGE:&LC[i].A->D :0];
4450 LC[i].A->D->type = [[rangeArray objectAtIndex:0] intValue];
4451 LC[i].A->D->count = [[rangeArray objectAtIndex:1] intValue];
4452 LC[i].A->D->pCount = [[rangeArray objectAtIndex:2] intValue];
4453 }else if(stringRange == 2){
4455 LC[i].A->D->seed = [[rangeArray objectAtIndex:0] intValue];
4456 LC[i].A->D->sort = [[rangeArray objectAtIndex:1] intValue];
4457 LC[i].A->D->continium = [[rangeArray objectAtIndex:2] intValue];
4458 LC[i].A->D->absolute = [[rangeArray objectAtIndex:3] intValue];
4459 LC[i].A->D->beam = [[rangeArray objectAtIndex:4] intValue];
4460 LC[i].A->D->noSizeFix = [[rangeArray objectAtIndex:5] intValue];
4461 LC[i].A->D->fix = [[rangeArray objectAtIndex:5] intValue];
4464 NSString *str2 = [fileDataArray objectAtIndex:k+1];
4465 NSRange rangeSearch3 = [str2 rangeOfString:@"####"];
4466 if(stringNumber >= 1 && rangeSearch3.location != NSNotFound) [self AddDAMAGE:&LC[i].A->D :stringNumber-1];
4467 LC[i].A->D = LC[i].A->D->next;
4469 }else if(stringType == 2){stringRange ++;
4471 if(rangeSearch2.location != NSNotFound){
4474 else if(rangeSearch.location != NSNotFound){
4477 }else if(stringRange == 1){stringNumber++;
4479 [self AddDMGEXTEND:&LC[i].A->E :0];
4483 LC[i].A->E->rate = [[rangeArray objectAtIndex:0] intValue];
4484 LC[i].A->E->hit = [[rangeArray objectAtIndex:2] intValue];
4485 LC[i].A->E->atkHit = [[rangeArray objectAtIndex:1] intValue];
4487 NSString *str2 = [fileDataArray objectAtIndex:k+1];
4488 NSRange rangeSearch3 = [str2 rangeOfString:@"####"];
4489 if(stringNumber >= 1 && rangeSearch3.location != NSNotFound) [self AddDMGEXTEND:&LC[i].A->E :stringNumber-1];
4491 LC[i].A->E = LC[i].A->E->next;
4494 }else if(stringType == 3){stringRange ++;
4495 //NSLog(@"%@", [fileDataArray objectAtIndex:k]);
4496 if([rangeArray count] == 1){
4501 ani = calloc(1, sizeof(ANI));
4502 ani->name = [[rangeArray objectAtIndex:0] retain];
4503 ani->ax = [[rangeArray objectAtIndex:1] intValue];
4504 ani->ay = [[rangeArray objectAtIndex:2] intValue];
4505 ani->names = [[rangeArray objectAtIndex:3] retain];
4508 [[NSFileManager defaultManager] changeCurrentDirectoryPath:[[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent]];
4510 NSString *path = @"data/AttackList/ALdata";
4512 path = [path stringByAppendingFormat:@"%dE", i+1];
4514 path = [path stringByAppendingFormat:@"/"];
4516 path = [path stringByAppendingString:ani->names];
4518 ani->snd = [[[NSSound alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] byReference:NO] retain];
4520 path = @"data/AttackList/ALdata";
4522 path = [path stringByAppendingFormat:@"%dE", i+1];
4524 path = [path stringByAppendingFormat:@"/"];
4526 path = [path stringByAppendingString:ani->name];
4528 ani->img = [[[NSImage alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path]] retain];
4535 ani->next = calloc(1, sizeof(ANI));
4536 if(omg3 == 1) aniTop = ani;
4539 ani->name = [[rangeArray objectAtIndex:0] retain];
4540 ani->ax = [[rangeArray objectAtIndex:1] intValue];
4541 ani->ay = [[rangeArray objectAtIndex:2] intValue];
4542 ani->names = [[rangeArray objectAtIndex:3] retain];
4544 [[NSFileManager defaultManager] changeCurrentDirectoryPath:[[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent]];
4546 NSString *path = @"data/AttackList/ALdata";
4548 path = [path stringByAppendingFormat:@"%dE", i+1];
4550 path = [path stringByAppendingFormat:@"/"];
4552 path = [path stringByAppendingString:ani->names];
4554 ani->snd = [[[NSSound alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] byReference:NO] retain];
4556 path = @"data/AttackList/ALdata";
4558 path = [path stringByAppendingFormat:@"%dE", i+1];
4560 path = [path stringByAppendingFormat:@"/"];
4562 path = [path stringByAppendingString:ani->name];
4564 ani->img = [[[NSImage alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path]] retain];
4572 LC[i].A->AN.ANI = ani;
4576 if([fileDataArray2 count]-1 > j) LC[i].A = LC[i].A->next;
4577 else LC[i].A->next = NULL;
4580 if(LC[i].attackListNum <= 0) Atop = NULL;
4586 for (int i=0; i< itemNumb; i++)
4587 [self setTotalDamage:i row:<#(int)#>];
4591 -(void)initFileDirectoryAttackEQ{
4592 NSString *directoryPath;
4594 directoryPath = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
4595 [[NSFileManager defaultManager] changeCurrentDirectoryPath:directoryPath];
4598 cwd = getcwd(NULL, 0);
4601 NSData *InitialData = [NSData dataWithContentsOfFile:@"data/AttackList3/preset.txt"];
4602 NSString *pathALI = @"data/AttackList3/img";
4603 NSString *pathDATA2 = @"data/AttackList3/preset.txt";
4604 NSString *pathAL = @"data/AttackList3/preset.txt";
4605 NSString *fileData = nil;
4607 itemNumb = eItemNum;
4609 [[NSFileManager defaultManager] createDirectoryAtPath:pathALI withIntermediateDirectories:YES attributes:nil error:nil];
4610 [[NSFileManager defaultManager] createFileAtPath:pathDATA2 contents:nil attributes:nil];
4612 [[NSFileManager defaultManager] createFileAtPath:pathAL contents:nil attributes:nil];
4616 for (int i=1; i<=itemNumb; i++) {
4617 NSString *fdata = @"data/AttackList3/IALdata";
4619 fdata = [fdata stringByAppendingFormat:@"%d.txt", i];
4631 NSArray *fileDataArray2;
4633 for (int i=0; i< itemNumb; i++) {
4634 NSString *fdata = @"data/AttackList3/IALdata";
4636 fdata = [fdata stringByAppendingFormat:@"%d.txt", i+1];
4638 fileData = [NSString stringWithContentsOfFile:fdata encoding:NSUTF8StringEncoding error:nil];
4639 fileDataArray2 = [fileData componentsSeparatedByString:@"--------\n"];
4641 bool initAttackAdd = false;
4643 if(fileData == 0x00007fff7e19dfa0) continue;
4645 if([fileDataArray2 count] <= 0) continue;
4647 for(int j=0;j < [fileDataArray2 count];j++){
4648 if(![[fileDataArray2 objectAtIndex:0] isEqualToString:@""]) EQ[i].attackListNum++;
4649 fileDataArray = [[fileDataArray2 objectAtIndex:j] componentsSeparatedByString:@"\n"];
4652 [self AddATTACK:&EQ[i].A :0];
4654 [self AddATTACK:&EQ[i].A :j];
4656 if(!initAttackAdd) {
4659 initAttackAdd = true;
4662 NSArray *items = [[fileDataArray objectAtIndex:0] componentsSeparatedByString:@","];
4663 EQ[i].A->name = [[items objectAtIndex:0] retain];
4664 EQ[i].A->indexE = i+1;
4665 if([fileDataArray count] <= 1) continue;
4666 items = [[fileDataArray objectAtIndex:1] componentsSeparatedByString:@","];
4668 EQ[i].A->trig = [[items objectAtIndex:0] intValue];
4669 EQ[i].A->type = [[items objectAtIndex:1] intValue];
4670 EQ[i].A->melee = [[items objectAtIndex:2] intValue];
4671 EQ[i].A->P = [[items objectAtIndex:3] intValue];
4673 items = [[fileDataArray objectAtIndex:2] componentsSeparatedByString:@","];
4675 EQ[i].A->rangeA = [[items objectAtIndex:0] intValue];
4676 EQ[i].A->rangeB = [[items objectAtIndex:1] intValue];
4677 EQ[i].A->extent = [[items objectAtIndex:2] intValue];
4678 EQ[i].A->bullet = [[items objectAtIndex:3] intValue];
4679 EQ[i].A->hitCount = [[items objectAtIndex:4] intValue];
4680 EQ[i].A->successRate = [[items objectAtIndex:5] intValue];
4681 EQ[i].A->vigor = [[items objectAtIndex:6] intValue];
4682 EQ[i].A->hitPercent = [[items objectAtIndex:7] intValue];
4684 items = [[fileDataArray objectAtIndex:3] componentsSeparatedByString:@","];
4686 EQ[i].A->costType = [[items objectAtIndex:0] intValue];
4688 if(EQ[i].A->costType == 0) {
4689 EQ[i].A->MP = [[items objectAtIndex:1] intValue];
4690 EQ[i].A->pMP = [[items objectAtIndex:2] intValue];
4692 else if(EQ[i].A->costType == 1) {
4693 EQ[i].A->AP = [[items objectAtIndex:1] intValue];
4694 EQ[i].A->pAP = [[items objectAtIndex:2] intValue];
4696 else if(EQ[i].A->costType == 2) {
4697 EQ[i].A->HP = [[items objectAtIndex:1] intValue];
4698 EQ[i].A->pHP = [[items objectAtIndex:2] intValue];
4701 EQ[i].A->cSupply = [[items objectAtIndex:3] intValue];
4702 EQ[i].A->cFood = [[items objectAtIndex:4] intValue];
4703 EQ[i].A->cMoney = [[items objectAtIndex:5] intValue];
4705 items = [[fileDataArray objectAtIndex:4] componentsSeparatedByString:@","];
4707 EQ[i].A->riku = [[items objectAtIndex:0] intValue];
4708 EQ[i].A->chu = [[items objectAtIndex:1] intValue];
4709 EQ[i].A->umi = [[items objectAtIndex:2] intValue];
4710 EQ[i].A->sora = [[items objectAtIndex:3] intValue];
4711 EQ[i].A->dmgExtend = [[items objectAtIndex:4] intValue];
4712 EQ[i].A->imagine = [[items objectAtIndex:5] intValue];
4716 items = [[fileDataArray objectAtIndex:6] componentsSeparatedByString:@","];
4718 if(![[items objectAtIndex:0] isEqualToString:@"(null)"])
4719 EQ[i].A->AN.movName = [[items objectAtIndex:0] retain];
4720 else EQ[i].A->AN.movName = @"";
4721 EQ[i].A->AN.frame = [[items objectAtIndex:1] intValue];
4722 items = [[fileDataArray objectAtIndex:5] componentsSeparatedByString:@","];
4724 EQ[i].A->cmd = [[items objectAtIndex:0] retain];
4725 if([items count] >= 2)
4726 EQ[i].A->hasei = [[items objectAtIndex:1] intValue];
4729 //[self AddDAMAGE:&UC[i].A->D :0];
4730 //[self AddDMGEXTEND:&UC[i].A->E :0];
4732 DAMAGE *Dtop = EQ[i].A->D;
4733 DMGEXTEND *Etop = EQ[i].A->E;
4734 ANI *ani = EQ[i].A->AN.ANI;
4736 static bool omfgFlag;
4739 int stringRange = 1;
4740 int stringNumber = 0;
4741 for (int k = 7; k<[fileDataArray count];k++) {
4742 NSString *str = [fileDataArray objectAtIndex:k];
4743 NSRange rangeSearch, rangeSearch2, rangeSearch9;
4744 NSArray *rangeArray;
4745 rangeSearch = [str rangeOfString:@"####"];
4746 rangeArray = [str componentsSeparatedByString:@","];
4747 rangeSearch2 = [str rangeOfString:@"----"];
4748 rangeSearch9 = [str rangeOfString:@""];
4750 static int omg2 = 0;
4751 static int omg3 = 0;
4753 if(k == [fileDataArray count] - 1){
4758 if (rangeSearch.location != NSNotFound) {
4759 }else if(rangeSearch2.location != NSNotFound){
4763 if(EQ[i].A->msg == NULL){
4764 EQ[i].A->msg = [str retain];
4766 if(omfgFlag) EQ[i].A->msg = [[EQ[i].A->msg stringByAppendingFormat:@"\n"] retain];
4767 EQ[i].A->msg = [[EQ[i].A->msg stringByAppendingFormat:@"%@", str] retain];
4770 }else if(stringType == 1){stringRange ++;
4771 if(rangeSearch2.location != NSNotFound){
4774 else if(rangeSearch.location != NSNotFound){
4776 }else if(stringRange == 1){
4778 [self AddDAMAGE:&EQ[i].A->D :0];
4782 EQ[i].A->D->type = [[rangeArray objectAtIndex:0] intValue];
4783 EQ[i].A->D->count = [[rangeArray objectAtIndex:1] intValue];
4784 EQ[i].A->D->pCount = [[rangeArray objectAtIndex:2] intValue];
4785 }else if(stringRange == 2){
4787 EQ[i].A->D->seed = [[rangeArray objectAtIndex:0] intValue];
4788 EQ[i].A->D->sort = [[rangeArray objectAtIndex:1] intValue];
4789 EQ[i].A->D->continium = [[rangeArray objectAtIndex:2] intValue];
4790 EQ[i].A->D->absolute = [[rangeArray objectAtIndex:3] intValue];
4791 EQ[i].A->D->beam = [[rangeArray objectAtIndex:4] intValue];
4792 EQ[i].A->D->noSizeFix = [[rangeArray objectAtIndex:5] intValue];
4793 EQ[i].A->D->fix = [[rangeArray objectAtIndex:5] intValue];
4796 NSString *str2 = [fileDataArray objectAtIndex:k+1];
4797 NSRange rangeSearch3 = [str2 rangeOfString:@"####"];
4798 if(stringNumber >= 1 && rangeSearch3.location != NSNotFound) [self AddDAMAGE:&EQ[i].A->D :stringNumber-1];
4799 EQ[i].A->D = EQ[i].A->D->next;
4801 }else if(stringType == 2){stringRange ++;
4803 if(rangeSearch2.location != NSNotFound){
4806 else if(rangeSearch.location != NSNotFound){
4809 }else if(stringRange == 1){stringNumber++;
4811 [self AddDMGEXTEND:&EQ[i].A->E :0];
4815 EQ[i].A->E->rate = [[rangeArray objectAtIndex:0] intValue];
4816 EQ[i].A->E->hit = [[rangeArray objectAtIndex:2] intValue];
4817 EQ[i].A->E->atkHit = [[rangeArray objectAtIndex:1] intValue];
4819 NSString *str2 = [fileDataArray objectAtIndex:k+1];
4820 NSRange rangeSearch3 = [str2 rangeOfString:@"####"];
4821 if(stringNumber >= 1 && rangeSearch3.location != NSNotFound) [self AddDMGEXTEND:&EQ[i].A->E :stringNumber-1];
4823 EQ[i].A->E = EQ[i].A->E->next;
4826 }else if(stringType == 3){stringRange ++;
4827 //NSLog(@"%@", [fileDataArray objectAtIndex:k]);
4828 if([rangeArray count] == 1){
4833 ani = calloc(1, sizeof(ANI));
4834 ani->name = [[rangeArray objectAtIndex:0] retain];
4835 ani->ax = [[rangeArray objectAtIndex:1] intValue];
4836 ani->ay = [[rangeArray objectAtIndex:2] intValue];
4837 ani->names = [[rangeArray objectAtIndex:3] retain];
4840 [[NSFileManager defaultManager] changeCurrentDirectoryPath:[[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent]];
4842 NSString *path = @"data/AttackList3/IALdata";
4844 path = [path stringByAppendingFormat:@"%dE", i+1];
4846 path = [path stringByAppendingFormat:@"/"];
4848 path = [path stringByAppendingString:ani->names];
4850 ani->snd = [[[NSSound alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] byReference:NO] retain];
4852 path = @"data/AttackList3/IALdata";
4854 path = [path stringByAppendingFormat:@"%dE", i+1];
4856 path = [path stringByAppendingFormat:@"/"];
4858 path = [path stringByAppendingString:ani->name];
4860 ani->img = [[[NSImage alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path]] retain];
4867 ani->next = calloc(1, sizeof(ANI));
4868 if(omg3 == 1) aniTop = ani;
4871 ani->name = [[rangeArray objectAtIndex:0] retain];
4872 ani->ax = [[rangeArray objectAtIndex:1] intValue];
4873 ani->ay = [[rangeArray objectAtIndex:2] intValue];
4874 ani->names = [[rangeArray objectAtIndex:3] retain];
4876 [[NSFileManager defaultManager] changeCurrentDirectoryPath:[[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent]];
4878 NSString *path = @"data/AttackList3/IALdata";
4880 path = [path stringByAppendingFormat:@"%dE", i+1];
4882 path = [path stringByAppendingFormat:@"/"];
4884 path = [path stringByAppendingString:ani->names];
4886 ani->snd = [[[NSSound alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] byReference:NO] retain];
4888 path = @"data/AttackList3/IALdata";
4890 path = [path stringByAppendingFormat:@"%dE", i+1];
4892 path = [path stringByAppendingFormat:@"/"];
4894 path = [path stringByAppendingString:ani->name];
4896 ani->img = [[[NSImage alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path]] retain];
4904 EQ[i].A->AN.ANI = ani;
4908 if([fileDataArray2 count]-1 > j) EQ[i].A = EQ[i].A->next;
4909 else EQ[i].A->next = NULL;
4912 if(EQ[i].attackListNum <= 0) Atop = NULL;
4917 for (int i=0; i< itemNumb; i++)
4918 [self setTotalDamage:i row:<#(int)#>];
4923 -(ATTACK*)AllocATTACK{
4924 return (calloc(1, sizeof(ATTACK)));
4926 -(DAMAGE*)AllocDAMAGE{
4927 return (calloc(1, sizeof(DAMAGE)));
4929 -(DMGEXTEND*)AllocDMGEXTEND{
4930 return (calloc(1, sizeof(DMGEXTEND)));
4933 -(void)AddATTACK:(ATTACK**)top:(int)no{
4936 *top = [self AllocATTACK];
4941 while(ptr->next != NULL) ptr = ptr->next;
4942 ptr->next = [self AllocATTACK];
4944 ptr->next->next = NULL;
4951 -(void)AddDAMAGE:(DAMAGE**)top:(int)no{
4954 *top = [self AllocDAMAGE];
4959 while(ptr->next != NULL) ptr = ptr->next;
4960 ptr->next = [self AllocDAMAGE];
4962 ptr->next->next = NULL;
4969 -(void)AddDMGEXTEND:(DMGEXTEND**)top:(int)no{
4970 DMGEXTEND *ptr = *top;
4972 *top = [self AllocDMGEXTEND];
4977 while(ptr->next != NULL) ptr = ptr->next;
4978 ptr->next = [self AllocDMGEXTEND];
4980 ptr->next->next = NULL;
4989 -(void)initItemList{
4990 equipListMA = [NSMutableArray new];
4992 [self willChangeValueForKey:@"equipItemMA"];
4993 [equipItemMA removeAllObjects];
4994 [self didChangeValueForKey:@"equipItemMA"];
4996 for(int i = 0;i < eItemNum;i++){
4997 NSMutableDictionary* dict = [NSMutableDictionary new];
4998 NSString *str = @"";
4999 [dict setValue:[NSString stringWithFormat:@"%@", EQ[i].name] forKey:@"name"];
5002 EQ[i].name = [[NSString stringWithFormat:@"新規アイテム%d", i] retain];
5003 EQ[i].nameRecognition = [[NSString stringWithFormat:@"新規アイテム%d", i] retain];
5004 EQ[i].nameID = [[NSString stringWithFormat:@"eq%d", i] retain];
5005 [dict setValue:EQ[i].name forKey:@"name"];
5009 str = [str stringByAppendingFormat:@"HP %d ", (int)EQ[i].HP];
5011 str = [str stringByAppendingFormat:@"MP %d ", (int)EQ[i].MP];
5013 str = [str stringByAppendingFormat:@"STR %d ", (int)EQ[i].STR];
5015 str = [str stringByAppendingFormat:@"VIT %d ", (int)EQ[i].VIT];
5017 str = [str stringByAppendingFormat:@"AGI %d ", (int)EQ[i].AGI];
5019 str = [str stringByAppendingFormat:@"DEX %d ", (int)EQ[i].DEX];
5021 str = [str stringByAppendingFormat:@"MEN %d ", (int)EQ[i].MEN];
5023 str = [str stringByAppendingFormat:@"INT %d ", (int)EQ[i].INT];
5025 str = [str stringByAppendingFormat:@"LUK %d ", (int)EQ[i].LUK];
5026 if(EQ[i].Weight != 0)
5027 str = [str stringByAppendingFormat:@"重さ %d ", (int)EQ[i].Weight];
5029 [dict setValue:[NSString stringWithFormat:@"%@", str] forKey:@"memo"];
5031 [self willChangeValueForKey:@"equipListMA"];
5032 [equipListMA addObject:dict];
5033 [self didChangeValueForKey:@"equipListMA"];
5040 -(void)initUnitChipList{
5041 unitChipListMA = [NSMutableArray new];
5043 for(int i = 0;i < chipNumb;i++){
5044 NSMutableDictionary* dict = [NSMutableDictionary new];
5046 UC[i].name = [[NSString stringWithFormat:@"新規ユニット"] retain];
5047 UC[i].nameNick = [[NSString stringWithFormat:@"新規ニックネーム"] retain];
5048 UC[i].nameClass = [[NSString stringWithFormat:@"新規クラス"] retain];
5049 UC[i].name = [[UC[i].name stringByAppendingFormat:@"%d",i+1] retain];
5050 UC[i].nameID = @"uc";
5051 UC[i].nameID = [[UC[i].nameID stringByAppendingFormat:@"%d",i+1] retain];
5052 UC[i].nameRecognition = [@"新規名前" retain];
5053 UC[i].nameRecognition = [[UC[i].nameRecognition stringByAppendingFormat:@"%d",i+1] retain];
5054 UC[i].iName = @"uc";
5055 UC[i].iName = [[UC[i].iName stringByAppendingFormat:@"%d",i+1] retain];
5056 UC[i].iNameb = @"ucb";
5057 UC[i].iNameb = [[UC[i].iNameb stringByAppendingFormat:@"%d",i+1] retain];
5058 UC[i].R_M.air = 100;
5059 UC[i].R_M.arrow = 100;
5060 UC[i].R_M.blood = 100;
5061 UC[i].R_M.blow = 100;
5063 UC[i].R_M.charm = 100;
5064 UC[i].R_M.cold = 100;
5065 UC[i].R_M.confusion = 100;
5066 UC[i].R_M.dark = 100;
5068 UC[i].R_M.electoric = 100;
5069 UC[i].R_M.explosion = 100;
5070 UC[i].R_M.flame = 100;
5071 UC[i].R_M.gas = 100;
5073 UC[i].R_M.gun = 100;
5074 UC[i].R_M.holy = 100;
5075 UC[i].R_M.paralysis = 100;
5076 UC[i].R_M.poison = 100;
5078 UC[i].R_M.shell = 100;
5079 UC[i].R_M.silent = 100;
5080 UC[i].R_M.slash = 100;
5081 UC[i].R_M.sleep = 100;
5083 UC[i].R_M.stub = 100;
5084 UC[i].R_M.water = 100;
5088 [dict setValue:UC[i].img forKey:@"img"];
5089 [dict setValue:UC[i].imgb forKey:@"imgBig"];
5090 [dict setValue:[NSString stringWithFormat:@"%@", UC[i].name] forKey:@"name"];
5091 [dict setValue:[NSString stringWithFormat:@"%g", UC[i].S_M.HP] forKey:@"HP"];
5092 [dict setValue:[NSString stringWithFormat:@"%g", UC[i].S_M.BP] forKey:@"BP"];
5093 [dict setValue:[NSString stringWithFormat:@"%@", UC[i].nameClass] forKey:@"nameC"];
5094 [self willChangeValueForKey:@"unitChipListMA"];
5095 [unitChipListMA addObject:dict];
5096 [self didChangeValueForKey:@"unitChipListMA"];
5102 -(void)initTotalDamage{
5103 for(int i = 0;i < chipNumb;i++){
5106 [self setTotalDamage:i row:j];
5111 for(int i = 0;i < itemNumb;i++){
5114 [self setTotalDamageEQ:i row:j];
5119 for(int i = 0;i < LCN;i++){
5122 [self setTotalDamage2:i row:j];
5129 -(void)initAttackList{
5130 attackListMA = [NSMutableArray new];
5132 [self willChangeValueForKey:@"attackListMA"];
5133 [attackListMA removeAllObjects];
5134 [self didChangeValueForKey:@"attackListMA"];
5138 ATTACK *Atop = UC[clickIndex].A;
5141 [self setTotalDamage:(int)clickIndex row:i0];
5145 UC[clickIndex].A = Atop;
5147 if(UC[clickIndex].A == NULL) return;
5149 for(int i = 0;i < UC[clickIndex].attackListNum;i++){
5150 NSMutableDictionary* dict = [NSMutableDictionary new];
5152 NSString *str = NULL;
5154 if(UC[clickIndex].A == NULL) break;
5155 if(UC[clickIndex].A->name == NULL) continue;
5157 if(UC[clickIndex].A->D != NULL){
5158 if(UC[clickIndex].A->D->type == 0) str = [NSString stringWithFormat:@"攻"];
5159 if(UC[clickIndex].A->D->type == 1) str = [NSString stringWithFormat:@"防"];
5160 if(UC[clickIndex].A->D->type == 2) str = [NSString stringWithFormat:@"命"];
5161 if(UC[clickIndex].A->D->type == 3) str = [NSString stringWithFormat:@"回"];
5162 if(UC[clickIndex].A->D->type == 4) str = [NSString stringWithFormat:@"演"];
5163 if(UC[clickIndex].A->D->type == 5) str = [NSString stringWithFormat:@"会"];
5165 countNumb = UC[clickIndex].A->totalD;
5166 str = [str stringByAppendingFormat:@"%g", countNumb];
5169 [dict setValue:[NSString stringWithFormat:@"%@", str] forKey:@"atk"];
5171 [dict setValue:[NSString stringWithFormat:@"%@", UC[clickIndex].A->name] forKey:@"name"];
5172 [dict setValue:[NSString stringWithFormat:@"%d", UC[clickIndex].A->hitPercent] forKey:@"hit"];
5173 [dict setValue:[NSString stringWithFormat:@"%d", UC[clickIndex].A->vigor] forKey:@"vigor"];
5174 [dict setValue:[NSString stringWithFormat:@"%d", UC[clickIndex].A->bullet] forKey:@"bullet"];
5175 NSString *rangeStr = @"";
5176 if(UC[clickIndex].A->P) rangeStr = @"P";
5177 if(UC[clickIndex].A->melee) rangeStr = [rangeStr stringByAppendingFormat:@"●"];
5178 else rangeStr = [rangeStr stringByAppendingFormat:@"□"];
5179 if(UC[clickIndex].A->rangeA == UC[clickIndex].A->rangeB)
5180 [dict setValue:[NSString stringWithFormat:@"%@%d", rangeStr, UC[clickIndex].A->rangeA] forKey:@"range"];
5182 [dict setValue:[NSString stringWithFormat:@"%@%d-%d", rangeStr, UC[clickIndex].A->rangeA, UC[clickIndex].A->rangeB] forKey:@"range"];
5184 if(UC[clickIndex].A->MP > 0)
5185 [dict setValue:[NSString stringWithFormat:@"MP%g", UC[clickIndex].A->MP + floor(UC[clickIndex].A->pMP*UC[clickIndex].S_M.MP/100 + 0.5)] forKey:@"cost"];
5186 else if(UC[clickIndex].A->AP > 0)
5187 [dict setValue:[NSString stringWithFormat:@"AP%g", UC[clickIndex].A->AP+ floor(UC[clickIndex].A->pAP*UC[clickIndex].S_M.AP/100 + 0.5)] forKey:@"cost"];
5188 else if(UC[clickIndex].A->HP > 0)
5189 [dict setValue:[NSString stringWithFormat:@"HP%g", UC[clickIndex].A->HP+ floor(UC[clickIndex].A->pHP*UC[clickIndex].S_M.HP/100 + 0.5)] forKey:@"cost"];
5191 [dict setValue:[NSString stringWithFormat:@"%@", UC[clickIndex].A->cmd] forKey:@"command"];
5193 DAMAGE *dmgTop = UC[clickIndex].A->D;
5194 NSString *dstr = @"";
5216 while(UC[clickIndex].A->D){
5218 if(UC[clickIndex].A->D->fix == 0 && !b1) {dstr = [dstr stringByAppendingString:@"通"];
5221 if(UC[clickIndex].A->D->fix == 1 && !b2) {dstr = [dstr stringByAppendingString:@"弓"];
5224 if(UC[clickIndex].A->D->fix == 2 && !b3) {dstr = [dstr stringByAppendingString:@"銃"];
5227 if(UC[clickIndex].A->imagine == true && !b4){dstr = [dstr stringByAppendingString:@"異"];
5230 if(UC[clickIndex].A->D->seed == 0 && !b5) {dstr = [dstr stringByAppendingString:@"打"];
5233 if(UC[clickIndex].A->D->seed == 1 && !b6) {dstr = [dstr stringByAppendingString:@"斬"];
5236 if(UC[clickIndex].A->D->seed == 2 && !b7) {dstr = [dstr stringByAppendingString:@"突"];
5239 if(UC[clickIndex].A->D->seed == 3 && !b8) {dstr = [dstr stringByAppendingString:@"射"];
5242 if(UC[clickIndex].A->D->seed == 4 && !b9) {dstr = [dstr stringByAppendingString:@"銃"];
5245 if(UC[clickIndex].A->D->seed == 5 && !b10) {dstr = [dstr stringByAppendingString:@"砲"];
5248 if(UC[clickIndex].A->D->seed == 6 && !b11) {dstr = [dstr stringByAppendingString:@"火"];
5251 if(UC[clickIndex].A->D->seed == 7 && !b12) {dstr = [dstr stringByAppendingString:@"冷"];
5254 if(UC[clickIndex].A->D->seed == 8 && !b13) {dstr = [dstr stringByAppendingString:@"電"];
5257 if(UC[clickIndex].A->D->seed == 9 && !b14) {dstr = [dstr stringByAppendingString:@"風"];
5260 if(UC[clickIndex].A->D->seed == 10 && !b15) {dstr = [dstr stringByAppendingString:@"水"];
5263 if(UC[clickIndex].A->D->seed == 11 && !b16) {dstr = [dstr stringByAppendingString:@"ガ"];
5266 if(UC[clickIndex].A->D->seed == 12 && !b17) {dstr = [dstr stringByAppendingString:@"
\b聖"];
5269 if(UC[clickIndex].A->D->seed == 13 && !b18) {dstr = [dstr stringByAppendingString:@"闇"];
5272 if(UC[clickIndex].A->D->seed == 14 && !b19) {dstr = [dstr stringByAppendingString:@"爆"];
5275 if(UC[clickIndex].A->D->seed == 15 && !b20) {dstr = [dstr stringByAppendingString:@"血"];
5279 UC[clickIndex].A->D = UC[clickIndex].A->D->next;
5281 UC[clickIndex].A->D = dmgTop;
5283 [dict setValue:dstr forKey:@"memo"];
5285 [self willChangeValueForKey:@"attackListMA"];
5286 [attackListMA addObject:dict];
5287 [self didChangeValueForKey:@"attackListMA"];
5289 UC[clickIndex].A = UC[clickIndex].A->next;
5292 UC[clickIndex].A = Atop;
5296 -(void)initAttackList2{
5297 attackListMA = [NSMutableArray new];
5299 [self willChangeValueForKey:@"attackListMA"];
5300 [attackListMA removeAllObjects];
5301 [self didChangeValueForKey:@"attackListMA"];
5305 ATTACK *Atop = LC[cil].A;
5308 [self setTotalDamage2:(int)cil row:i0];
5314 if(LC[cil].A == NULL) return;
5316 for(int i = 0;i < LC[cil].attackListNum;i++){
5317 NSMutableDictionary* dict = [NSMutableDictionary new];
5319 NSString *str = NULL;
5320 double countNumb = 0;
5321 if(LC[cil].A == NULL) break;
5322 if(LC[cil].A->name == NULL) continue;
5324 if(LC[cil].A->D != NULL){
5326 str = [NSString stringWithFormat:@"攻"];
5328 countNumb = LC[cil].A->totalD;
5329 str = [str stringByAppendingFormat:@"%g", countNumb];
5332 [dict setValue:[NSString stringWithFormat:@"%@", str] forKey:@"atk"];
5334 [dict setValue:[NSString stringWithFormat:@"%@", LC[cil].A->name] forKey:@"name"];
5335 [dict setValue:[NSString stringWithFormat:@"%d", LC[cil].A->hitPercent] forKey:@"hit"];
5336 [dict setValue:[NSString stringWithFormat:@"%d", LC[cil].A->vigor] forKey:@"vigor"];
5337 [dict setValue:[NSString stringWithFormat:@"%d", LC[cil].A->bullet] forKey:@"bullet"];
5338 NSString *rangeStr = @"";
5339 if(LC[cil].A->P) rangeStr = @"P";
5340 if(LC[cil].A->melee) rangeStr = [rangeStr stringByAppendingFormat:@"●"];
5341 else rangeStr = [rangeStr stringByAppendingFormat:@"□"];
5342 if(LC[cil].A->rangeA == LC[cil].A->rangeB)
5343 [dict setValue:[NSString stringWithFormat:@"%@%d", rangeStr, LC[cil].A->rangeA] forKey:@"range"];
5345 [dict setValue:[NSString stringWithFormat:@"%@%d-%d", rangeStr, LC[cil].A->rangeA, LC[cil].A->rangeB] forKey:@"range"];
5347 if(LC[cil].A->EN > 0)
5348 [dict setValue:[NSString stringWithFormat:@"EN%g", LC[cil].A->EN + floor(LC[cil].A->pEN*LC[cil].S_M.EN/100 + 0.5)] forKey:@"cost"];
5349 if(LC[cil].A->HP > 0)
5350 [dict setValue:[NSString stringWithFormat:@"HP%g", LC[cil].A->HP + floor(LC[cil].A->pEN*LC[cil].S_M.HP/100 + 0.5)] forKey:@"cost"];
5352 [dict setValue:[NSString stringWithFormat:@"%@", LC[cil].A->cmd] forKey:@"command"];
5353 DAMAGE *dmgTop = LC[cil].A->D;
5354 NSString *dstr = @"";
5376 while(LC[cil].A->D){
5378 if(LC[cil].A->D->fix == 0 && !b1) {dstr = [dstr stringByAppendingString:@"通"];
5381 if(LC[cil].A->D->fix == 1 && !b2) {dstr = [dstr stringByAppendingString:@"弓"];
5384 if(LC[cil].A->D->fix == 2 && !b3) {dstr = [dstr stringByAppendingString:@"銃"];
5387 if(LC[cil].A->imagine == true && !b4){dstr = [dstr stringByAppendingString:@"異"];
5390 if(LC[cil].A->D->seed == 0 && !b5) {dstr = [dstr stringByAppendingString:@"打"];
5393 if(LC[cil].A->D->seed == 1 && !b6) {dstr = [dstr stringByAppendingString:@"斬"];
5396 if(LC[cil].A->D->seed == 2 && !b7) {dstr = [dstr stringByAppendingString:@"突"];
5399 if(LC[cil].A->D->seed == 3 && !b8) {dstr = [dstr stringByAppendingString:@"射"];
5402 if(LC[cil].A->D->seed == 4 && !b9) {dstr = [dstr stringByAppendingString:@"銃"];
5405 if(LC[cil].A->D->seed == 5 && !b10) {dstr = [dstr stringByAppendingString:@"砲"];
5408 if(LC[cil].A->D->seed == 6 && !b11) {dstr = [dstr stringByAppendingString:@"火"];
5411 if(LC[cil].A->D->seed == 7 && !b12) {dstr = [dstr stringByAppendingString:@"冷"];
5414 if(LC[cil].A->D->seed == 8 && !b13) {dstr = [dstr stringByAppendingString:@"電"];
5417 if(LC[cil].A->D->seed == 9 && !b14) {dstr = [dstr stringByAppendingString:@"風"];
5420 if(LC[cil].A->D->seed == 10 && !b15) {dstr = [dstr stringByAppendingString:@"水"];
5423 if(LC[cil].A->D->seed == 11 && !b16) {dstr = [dstr stringByAppendingString:@"ガ"];
5426 if(LC[cil].A->D->seed == 12 && !b17) {dstr = [dstr stringByAppendingString:@"
\b聖"];
5429 if(LC[cil].A->D->seed == 13 && !b18) {dstr = [dstr stringByAppendingString:@"闇"];
5432 if(LC[cil].A->D->seed == 14 && !b19) {dstr = [dstr stringByAppendingString:@"爆"];
5435 if(LC[cil].A->D->seed == 15 && !b20) {dstr = [dstr stringByAppendingString:@"血"];
5439 LC[cil].A->D = LC[cil].A->D->next;
5441 LC[cil].A->D = dmgTop;
5443 [dict setValue:dstr forKey:@"memo"];
5445 [self willChangeValueForKey:@"attackListMA"];
5446 [attackListMA addObject:dict];
5447 [self didChangeValueForKey:@"attackListMA"];
5449 LC[cil].A = LC[cil].A->next;
5456 -(void)initAttackListEQ{
5457 attackListMA = [NSMutableArray new];
5459 [self willChangeValueForKey:@"attackListMA"];
5460 [attackListMA removeAllObjects];
5461 [self didChangeValueForKey:@"attackListMA"];
5465 ATTACK *Atop = EQ[clickIndexEQ].A;
5468 [self setTotalDamageEQ:(int)clickIndexEQ row:i0];
5472 EQ[clickIndexEQ].A = Atop;
5474 if(EQ[clickIndexEQ].A == NULL) return;
5476 for(int i = 0;i < EQ[clickIndexEQ].attackListNum;i++){
5477 NSMutableDictionary* dict = [NSMutableDictionary new];
5479 NSString *str = NULL;
5481 if(EQ[clickIndexEQ].A == NULL) break;
5482 if(EQ[clickIndexEQ].A->name == NULL) continue;
5484 if(EQ[clickIndexEQ].A->D != NULL){
5485 if(EQ[clickIndexEQ].A->D->type == 0) str = [NSString stringWithFormat:@"攻"];
5486 if(EQ[clickIndexEQ].A->D->type == 1) str = [NSString stringWithFormat:@"防"];
5487 if(EQ[clickIndexEQ].A->D->type == 2) str = [NSString stringWithFormat:@"命"];
5488 if(EQ[clickIndexEQ].A->D->type == 3) str = [NSString stringWithFormat:@"回"];
5489 if(EQ[clickIndexEQ].A->D->type == 4) str = [NSString stringWithFormat:@"演"];
5490 if(EQ[clickIndexEQ].A->D->type == 5) str = [NSString stringWithFormat:@"会"];
5492 countNumb = EQ[clickIndexEQ].A->totalD;
5493 str = [str stringByAppendingFormat:@"%g", countNumb];
5496 [dict setValue:[NSString stringWithFormat:@"%@", str] forKey:@"atk"];
5498 [dict setValue:[NSString stringWithFormat:@"%@", EQ[clickIndexEQ].A->name] forKey:@"name"];
5499 [dict setValue:[NSString stringWithFormat:@"%d", EQ[clickIndexEQ].A->hitPercent] forKey:@"hit"];
5500 [dict setValue:[NSString stringWithFormat:@"%d", EQ[clickIndexEQ].A->vigor] forKey:@"vigor"];
5501 [dict setValue:[NSString stringWithFormat:@"%d", EQ[clickIndexEQ].A->bullet] forKey:@"bullet"];
5502 NSString *rangeStr = @"";
5503 if(EQ[clickIndexEQ].A->P) rangeStr = @"P";
5504 if(EQ[clickIndexEQ].A->melee) rangeStr = [rangeStr stringByAppendingFormat:@"●"];
5505 else rangeStr = [rangeStr stringByAppendingFormat:@"□"];
5506 if(EQ[clickIndexEQ].A->rangeA == EQ[clickIndexEQ].A->rangeB)
5507 [dict setValue:[NSString stringWithFormat:@"%@%d", rangeStr, EQ[clickIndexEQ].A->rangeA] forKey:@"range"];
5509 [dict setValue:[NSString stringWithFormat:@"%@%d-%d", rangeStr, EQ[clickIndexEQ].A->rangeA, EQ[clickIndexEQ].A->rangeB] forKey:@"range"];
5511 if(EQ[clickIndexEQ].A->MP > 0)
5512 [dict setValue:[NSString stringWithFormat:@"MP%g", EQ[clickIndexEQ].A->MP + floor(EQ[clickIndexEQ].A->pMP)] forKey:@"cost"];
5513 else if(EQ[clickIndexEQ].A->AP > 0)
5514 [dict setValue:[NSString stringWithFormat:@"AP%g", EQ[clickIndexEQ].A->AP+ floor(EQ[clickIndexEQ].A->pAP)] forKey:@"cost"];
5515 else if(EQ[clickIndexEQ].A->HP > 0)
5516 [dict setValue:[NSString stringWithFormat:@"HP%g", EQ[clickIndexEQ].A->HP+ floor(EQ[clickIndexEQ].A->pHP)] forKey:@"cost"];
5518 [dict setValue:[NSString stringWithFormat:@"%@", EQ[clickIndexEQ].A->cmd] forKey:@"command"];
5520 DAMAGE *dmgTop = EQ[clickIndexEQ].A->D;
5521 NSString *dstr = @"";
5543 while(EQ[clickIndexEQ].A->D){
5545 if(EQ[clickIndexEQ].A->D->fix == 0 && !b1) {dstr = [dstr stringByAppendingString:@"通"];
5548 if(EQ[clickIndexEQ].A->D->fix == 1 && !b2) {dstr = [dstr stringByAppendingString:@"弓"];
5551 if(EQ[clickIndexEQ].A->D->fix == 2 && !b3) {dstr = [dstr stringByAppendingString:@"銃"];
5554 if(EQ[clickIndexEQ].A->imagine == true && !b4){dstr = [dstr stringByAppendingString:@"異"];
5557 if(EQ[clickIndexEQ].A->D->seed == 0 && !b5) {dstr = [dstr stringByAppendingString:@"打"];
5560 if(EQ[clickIndexEQ].A->D->seed == 1 && !b6) {dstr = [dstr stringByAppendingString:@"斬"];
5563 if(EQ[clickIndexEQ].A->D->seed == 2 && !b7) {dstr = [dstr stringByAppendingString:@"突"];
5566 if(EQ[clickIndexEQ].A->D->seed == 3 && !b8) {dstr = [dstr stringByAppendingString:@"射"];
5569 if(EQ[clickIndexEQ].A->D->seed == 4 && !b9) {dstr = [dstr stringByAppendingString:@"銃"];
5572 if(EQ[clickIndexEQ].A->D->seed == 5 && !b10) {dstr = [dstr stringByAppendingString:@"砲"];
5575 if(EQ[clickIndexEQ].A->D->seed == 6 && !b11) {dstr = [dstr stringByAppendingString:@"火"];
5578 if(EQ[clickIndexEQ].A->D->seed == 7 && !b12) {dstr = [dstr stringByAppendingString:@"冷"];
5581 if(EQ[clickIndexEQ].A->D->seed == 8 && !b13) {dstr = [dstr stringByAppendingString:@"電"];
5584 if(EQ[clickIndexEQ].A->D->seed == 9 && !b14) {dstr = [dstr stringByAppendingString:@"風"];
5587 if(EQ[clickIndexEQ].A->D->seed == 10 && !b15) {dstr = [dstr stringByAppendingString:@"水"];
5590 if(EQ[clickIndexEQ].A->D->seed == 11 && !b16) {dstr = [dstr stringByAppendingString:@"ガ"];
5593 if(EQ[clickIndexEQ].A->D->seed == 12 && !b17) {dstr = [dstr stringByAppendingString:@"
\b聖"];
5596 if(EQ[clickIndexEQ].A->D->seed == 13 && !b18) {dstr = [dstr stringByAppendingString:@"闇"];
5599 if(EQ[clickIndexEQ].A->D->seed == 14 && !b19) {dstr = [dstr stringByAppendingString:@"爆"];
5602 if(EQ[clickIndexEQ].A->D->seed == 15 && !b20) {dstr = [dstr stringByAppendingString:@"血"];
5606 EQ[clickIndexEQ].A->D = EQ[clickIndexEQ].A->D->next;
5608 EQ[clickIndexEQ].A->D = dmgTop;
5610 [dict setValue:dstr forKey:@"memo"];
5611 [self willChangeValueForKey:@"attackListMA"];
5612 [attackListMA addObject:dict];
5613 [self didChangeValueForKey:@"attackListMA"];
5615 EQ[clickIndexEQ].A = EQ[clickIndexEQ].A->next;
5618 EQ[clickIndexEQ].A = Atop;
5623 -(IBAction)skillListBtnUCL:(id)sender{
5624 windowPoint.x = [UCLDetailPanel frame].origin.x + 40;
5625 windowPoint.y = [UCLDetailPanel frame].origin.y + 80;
5626 [UCLPanelSkill setFrameOrigin:windowPoint];
5628 [self initSkillList];
5630 [UCLPanelSkill makeKeyAndOrderFront:nil];
5633 -(IBAction)attackListBtnlUCL:(id)sender{
5635 if(!loadChipSideFlag){
5636 [self initAttackSet];
5638 [self initAttackSet2];
5642 windowPoint.x = [UCLDetailPanel frame].origin.x;
5643 windowPoint.y = [UCLDetailPanel frame].origin.y;
5644 [UCLPanelAttackList setFrameOrigin:windowPoint];
5646 [UCLPanelAttackList makeKeyAndOrderFront:nil];
5649 -(IBAction)registListBtnlUCL:(id)sender{
5652 if(!loadChipSideFlag){
5653 [RETFblow setIntValue:UC[clickIndex].R_M.blow];
5654 [RETFslash setIntValue:UC[clickIndex].R_M.slash];
5655 [RETFstub setIntValue:UC[clickIndex].R_M.stub];
5656 [RETFarrow setIntValue:UC[clickIndex].R_M.arrow];
5657 [RETFgun setIntValue:UC[clickIndex].R_M.gun];
5658 [RETFshell setIntValue:UC[clickIndex].R_M.shell];
5660 [RETFflame setIntValue:UC[clickIndex].R_M.flame];
5661 [RETFcold setIntValue:UC[clickIndex].R_M.cold];
5662 [RETFelectoric setIntValue:UC[clickIndex].R_M.electoric];
5663 [RETFair setIntValue:UC[clickIndex].R_M.air];
5664 [RETFwater setIntValue:UC[clickIndex].R_M.water];
5665 [RETFgas setIntValue:UC[clickIndex].R_M.gas];
5666 [RETFholy setIntValue:UC[clickIndex].R_M.holy];
5667 [RETFdark setIntValue:UC[clickIndex].R_M.dark];
5668 [RETFexplosion setIntValue:UC[clickIndex].R_M.explosion];
5669 [RETFblood setIntValue:UC[clickIndex].R_M.blood];
5671 [RETFparalysis setIntValue:UC[clickIndex].R_M.paralysis];
5672 [RETFconfusion setIntValue:UC[clickIndex].R_M.confusion];
5673 [RETFpoison setIntValue:UC[clickIndex].R_M.poison];
5674 [RETFsleep setIntValue:UC[clickIndex].R_M.sleep];
5675 [RETFcharm setIntValue:UC[clickIndex].R_M.charm];
5676 [RETFsilent setIntValue:UC[clickIndex].R_M.silent];
5679 [RETFblow setIntValue:LC[cil].R_M.blow];
5680 [RETFslash setIntValue:LC[cil].R_M.slash];
5681 [RETFstub setIntValue:LC[cil].R_M.stub];
5682 [RETFarrow setIntValue:LC[cil].R_M.arrow];
5683 [RETFgun setIntValue:LC[cil].R_M.gun];
5684 [RETFshell setIntValue:LC[cil].R_M.shell];
5686 [RETFflame setIntValue:LC[cil].R_M.flame];
5687 [RETFcold setIntValue:LC[cil].R_M.cold];
5688 [RETFelectoric setIntValue:LC[cil].R_M.electoric];
5689 [RETFair setIntValue:LC[cil].R_M.air];
5690 [RETFwater setIntValue:LC[cil].R_M.water];
5691 [RETFgas setIntValue:LC[cil].R_M.gas];
5692 [RETFholy setIntValue:LC[cil].R_M.holy];
5693 [RETFdark setIntValue:LC[cil].R_M.dark];
5694 [RETFexplosion setIntValue:LC[cil].R_M.explosion];
5695 [RETFblood setIntValue:LC[cil].R_M.blood];
5697 [RETFparalysis setIntValue:LC[cil].R_M.paralysis];
5698 [RETFconfusion setIntValue:LC[cil].R_M.confusion];
5699 [RETFpoison setIntValue:LC[cil].R_M.poison];
5700 [RETFsleep setIntValue:LC[cil].R_M.sleep];
5701 [RETFcharm setIntValue:LC[cil].R_M.charm];
5702 [RETFsilent setIntValue:LC[cil].R_M.silent];
5706 windowPoint.x = [UCLDetailPanel frame].origin.x + 150;
5707 windowPoint.y = [UCLDetailPanel frame].origin.y;
5708 [UCLPanelRegist setFrameOrigin:windowPoint];
5709 [UCLPanelRegist makeKeyAndOrderFront:nil];
5713 -(IBAction)skillListBtnSubmitUCL:(id)sender{
5714 [self willChangeValueForKey:@"skillListMA"];
5715 [skillListMA removeAllObjects];
5716 [self didChangeValueForKey:@"skillListMA"];
5717 [UCLPanelSkill close];
5719 -(IBAction)attackListBtnSubmitlUCL:(id)sender{
5722 [self saveDataALEQ];
5724 [UCLPanelAttack close];
5728 if(!loadChipSideFlag){
5735 [UCLPanelAttack close];
5737 -(IBAction)registListBtnlSubmitUCL:(id)sender{
5740 if(!loadChipSideFlag){
5741 UC[clickIndex].R_M.blow = [RETFblow intValue];
5742 UC[clickIndex].R_M.slash = [RETFslash intValue];
5743 UC[clickIndex].R_M.stub = [RETFstub intValue];
5744 UC[clickIndex].R_M.arrow = [RETFarrow intValue];
5745 UC[clickIndex].R_M.gun = [RETFgun intValue];
5746 UC[clickIndex].R_M.shell = [RETFshell intValue];
5748 UC[clickIndex].R_M.flame = [RETFflame intValue];
5749 UC[clickIndex].R_M.cold = [RETFcold intValue];
5750 UC[clickIndex].R_M.electoric = [RETFelectoric intValue];
5751 UC[clickIndex].R_M.air = [RETFair intValue];
5752 UC[clickIndex].R_M.water = [RETFwater intValue];
5753 UC[clickIndex].R_M.gas = [RETFgas intValue];
5754 UC[clickIndex].R_M.holy = [RETFholy intValue];
5755 UC[clickIndex].R_M.dark = [RETFdark intValue];
5756 UC[clickIndex].R_M.explosion = [RETFexplosion intValue];
5757 UC[clickIndex].R_M.blood = [RETFblood intValue];
5759 UC[clickIndex].R_M.paralysis = [RETFparalysis intValue];
5760 UC[clickIndex].R_M.confusion = [RETFconfusion intValue];
5761 UC[clickIndex].R_M.poison = [RETFpoison intValue];
5762 UC[clickIndex].R_M.sleep = [RETFsleep intValue];
5763 UC[clickIndex].R_M.charm = [RETFcharm intValue];
5764 UC[clickIndex].R_M.silent = [RETFsilent intValue];
5766 UC[clickIndex].R_C = UC[clickIndex].R_M;
5768 LC[cil].R_M.blow = [RETFblow intValue];
5769 LC[cil].R_M.slash = [RETFslash intValue];
5770 LC[cil].R_M.stub = [RETFstub intValue];
5771 LC[cil].R_M.arrow = [RETFarrow intValue];
5772 LC[cil].R_M.gun = [RETFgun intValue];
5773 LC[cil].R_M.shell = [RETFshell intValue];
5775 LC[cil].R_M.flame = [RETFflame intValue];
5776 LC[cil].R_M.cold = [RETFcold intValue];
5777 LC[cil].R_M.electoric = [RETFelectoric intValue];
5778 LC[cil].R_M.air = [RETFair intValue];
5779 LC[cil].R_M.water = [RETFwater intValue];
5780 LC[cil].R_M.gas = [RETFgas intValue];
5781 LC[cil].R_M.holy = [RETFholy intValue];
5782 LC[cil].R_M.dark = [RETFdark intValue];
5783 LC[cil].R_M.explosion = [RETFexplosion intValue];
5784 LC[cil].R_M.blood = [RETFblood intValue];
5786 LC[cil].R_M.paralysis = [RETFparalysis intValue];
5787 LC[cil].R_M.confusion = [RETFconfusion intValue];
5788 LC[cil].R_M.poison = [RETFpoison intValue];
5789 LC[cil].R_M.sleep = [RETFsleep intValue];
5790 LC[cil].R_M.charm = [RETFcharm intValue];
5791 LC[cil].R_M.silent = [RETFsilent intValue];
5793 LC[cil].R_C = LC[cil].R_M;
5797 [UCLPanelRegist close];
5800 -(IBAction)insertSkillUCL:(id)sender{
5803 -(IBAction)removeSkillUCL:(id)sender{
5807 -(IBAction)mobileUCL:(id)sender{
5810 -(IBAction)skillUCL:(id)sender{
5813 -(IBAction)equiplUCL:(id)sender{
5818 -(IBAction)UCLPanelEquipListSubmitBtn:(id)sender{
5820 [UCLPanelEquipList close];
5822 -(IBAction)UCLPanelSkillListSubmitBtn:(id)sender{
5823 [UCLPanelSkillList close];
5826 -(IBAction)UCLPanelEquipListOpenBtn:(id)sender{
5827 windowPoint.x = [UCLPanel frame].origin.x + 50;
5828 windowPoint.y = [UCLPanel frame].origin.y;
5829 [UCLPanelEquipList setFrameOrigin:windowPoint];
5830 [UCLPanelEquipList makeKeyAndOrderFront:nil];
5832 -(IBAction)UCLPanelSkillListOpenBtn:(id)sender{
5833 windowPoint.x = [UCLPanel frame].origin.x + 50;
5834 windowPoint.y = [UCLPanel frame].origin.y;
5835 [UCLPanelSkillList setFrameOrigin:windowPoint];
5836 [UCLPanelSkillList makeKeyAndOrderFront:nil];
5839 -(IBAction)insertAttackList:(id)sender{
5844 NSMutableDictionary *dict = [NSMutableDictionary new];
5845 [dict setValue:[NSString stringWithFormat:@"新技"] forKey:@"name"];
5847 ATTACK *Atop = EQ[clickIndexEQ].A;
5849 if(clickedRowAT < 0){
5850 EQ[clickIndexEQ].A = Atop;
5851 if([attackListMA count] == 0){
5852 EQ[clickIndexEQ].A = (ATTACK*)malloc(sizeof(ATTACK));
5855 EQ[clickIndexEQ].A = [self initAttackData:EQ[clickIndexEQ].A];
5856 Atop = EQ[clickIndexEQ].A;
5858 while(EQ[clickIndexEQ].A->next) EQ[clickIndexEQ].A = EQ[clickIndexEQ].A->next;
5859 EQ[clickIndexEQ].A->next = (ATTACK*)malloc(sizeof(ATTACK));
5860 EQ[clickIndexEQ].A = EQ[clickIndexEQ].A->next;
5862 EQ[clickIndexEQ].A = [self initAttackData:EQ[clickIndexEQ].A];
5863 EQ[clickIndexEQ].A = Atop;
5866 [dict setValue:[NSString stringWithFormat:@"%@", EQ[clickIndexEQ].A->name] forKey:@"name"];
5868 [self willChangeValueForKey:@"attackListMA"];
5869 [attackListMA insertObject:dict atIndex:[attackListMA count]];
5870 [self didChangeValueForKey:@"attackListMA"];
5871 [attackListAC setSelectionIndex:999];
5872 EQ[clickIndexEQ].attackListNum++;
5875 EQ[clickIndexEQ].A = Atop;
5876 if([attackListMA count] == 0){
5877 EQ[clickIndexEQ].A = (ATTACK*)malloc(sizeof(ATTACK));
5879 EQ[clickIndexEQ].A = [self initAttackData:EQ[clickIndexEQ].A];
5880 Atop = EQ[clickIndexEQ].A;
5881 }else if(clickedRowAT > 0){
5882 for (int i = 0; i < clickedRowAT-1;i++)
5883 EQ[clickIndexEQ].A = EQ[clickIndexEQ].A->next;
5884 ATTACK *tmp = (ATTACK*)malloc(sizeof(ATTACK));
5885 *tmp = *EQ[clickIndexEQ].A->next;
5886 EQ[clickIndexEQ].A->next = (ATTACK*)malloc(sizeof(ATTACK));
5887 EQ[clickIndexEQ].A->next->next = tmp;
5888 EQ[clickIndexEQ].A = EQ[clickIndexEQ].A->next;
5890 EQ[clickIndexEQ].A = [self initAttackData:EQ[clickIndexEQ].A];
5891 EQ[clickIndexEQ].A = Atop;
5893 ATTACK *tmp = (ATTACK*)malloc(sizeof(ATTACK));
5894 tmp->next = EQ[clickIndexEQ].A;
5895 // INIT 処理[self InitAttack:tmp];
5896 tmp = [self initAttackData:tmp];
5898 EQ[clickIndexEQ].A = Atop;
5901 [dict setValue:[NSString stringWithFormat:@"%@", EQ[clickIndexEQ].A->name] forKey:@"name"];
5903 [self willChangeValueForKey:@"attackListMA"];
5904 [attackListMA insertObject:dict atIndex:clickedRowAT];
5905 [self didChangeValueForKey:@"attackListMA"];
5906 [attackListAC setSelectionIndex:clickedRowAT];
5907 EQ[clickIndexEQ].attackListNum++;
5915 if(!loadChipSideFlag){
5916 NSMutableDictionary *dict = [NSMutableDictionary new];
5917 [dict setValue:[NSString stringWithFormat:@"新技"] forKey:@"name"];
5919 ATTACK *Atop = UC[clickIndex].A;
5921 if(clickedRowAT < 0){
5922 UC[clickIndex].A = Atop;
5923 if([attackListMA count] == 0){
5924 UC[clickIndex].A = (ATTACK*)malloc(sizeof(ATTACK));
5927 UC[clickIndex].A = [self initAttackData:UC[clickIndex].A];
5929 Atop = UC[clickIndex].A;
5931 while(UC[clickIndex].A->next) UC[clickIndex].A = UC[clickIndex].A->next;
5932 UC[clickIndex].A->next = (ATTACK*)malloc(sizeof(ATTACK));
5933 UC[clickIndex].A = UC[clickIndex].A->next;
5935 UC[clickIndex].A = [self initAttackData:UC[clickIndex].A];
5937 UC[clickIndex].A = Atop;
5940 [dict setValue:[NSString stringWithFormat:@"%@", UC[clickIndex].A->name] forKey:@"name"];
5942 [self willChangeValueForKey:@"attackListMA"];
5943 [attackListMA insertObject:dict atIndex:[attackListMA count]];
5944 [self didChangeValueForKey:@"attackListMA"];
5945 [attackListAC setSelectionIndex:999];
5946 UC[clickIndex].attackListNum++;
5949 UC[clickIndex].A = Atop;
5950 if([attackListMA count] == 0){
5951 UC[clickIndex].A = (ATTACK*)malloc(sizeof(ATTACK));
5953 UC[clickIndex].A = [self initAttackData:UC[clickIndex].A];
5955 Atop = UC[clickIndex].A;
5956 }else if(clickedRowAT > 0){
5957 for (int i = 0; i < clickedRowAT-1;i++)
5958 UC[clickIndex].A = UC[clickIndex].A->next;
5959 ATTACK *tmp = (ATTACK*)malloc(sizeof(ATTACK));
5960 *tmp = *UC[clickIndex].A->next;
5961 UC[clickIndex].A->next = (ATTACK*)malloc(sizeof(ATTACK));
5962 UC[clickIndex].A->next->next = tmp;
5963 UC[clickIndex].A = UC[clickIndex].A->next;
5965 [self initAttackData:UC[clickIndex].A];
5966 UC[clickIndex].A = Atop;
5968 ATTACK *tmp = (ATTACK*)malloc(sizeof(ATTACK));
5969 tmp->next = UC[clickIndex].A;
5970 // INIT 処理[self InitAttack:tmp];
5971 tmp = [self initAttackData:tmp];
5973 UC[clickIndex].A = Atop;
5976 [dict setValue:[NSString stringWithFormat:@"%@", UC[clickIndex].A->name] forKey:@"name"];
5978 [self willChangeValueForKey:@"attackListMA"];
5979 [attackListMA insertObject:dict atIndex:clickedRowAT];
5980 [self didChangeValueForKey:@"attackListMA"];
5981 [attackListAC setSelectionIndex:clickedRowAT];
5982 UC[clickIndex].attackListNum++;
5986 NSMutableDictionary *dict = [NSMutableDictionary new];
5987 [dict setValue:[NSString stringWithFormat:@"新技"] forKey:@"name"];
5989 ATTACK *Atop = LC[cil].A;
5991 if(clickedRowAT < 0){
5993 if([attackListMA count] == 0){
5994 LC[cil].A = (ATTACK*)malloc(sizeof(ATTACK));
5997 LC[cil].A->name = [@"新技" retain];
5999 LC[cil].A->rangeA = 1;
6000 LC[cil].A->rangeB = 1;
6001 LC[cil].A->extent = 0;
6002 LC[cil].A->successRate = 100;
6003 LC[cil].A->costType = 0;
6004 LC[cil].A->type = 0;
6005 LC[cil].A = [self initAfuckingSTATUS2:LC[cil].A];
6006 LC[cil].A->D = NULL;
6007 LC[cil].A->E = NULL;
6008 LC[cil].A->next = NULL;
6011 while(LC[cil].A->next) LC[cil].A = LC[cil].A->next;
6012 LC[cil].A->next = (ATTACK*)malloc(sizeof(ATTACK));
6013 LC[cil].A = LC[cil].A->next;
6015 LC[cil].A->name = [@"新技" retain];
6016 LC[cil].A->rangeA = 1;
6017 LC[cil].A->rangeB = 1;
6018 LC[cil].A->extent = 0;
6019 LC[cil].A->successRate = 100;
6020 LC[cil].A->costType = 0;
6021 LC[cil].A->type = 0;
6022 LC[cil].A = [self initAfuckingSTATUS2:LC[cil].A];
6023 LC[cil].A->D = NULL;
6024 LC[cil].A->E = NULL;
6025 LC[cil].A->next = NULL;
6029 [dict setValue:[NSString stringWithFormat:@"%@", LC[cil].A->name] forKey:@"name"];
6031 [self willChangeValueForKey:@"attackListMA"];
6032 [attackListMA insertObject:dict atIndex:[attackListMA count]];
6033 [self didChangeValueForKey:@"attackListMA"];
6034 [attackListAC setSelectionIndex:999];
6035 LC[cil].attackListNum++;
6039 if([attackListMA count] == 0){
6040 LC[cil].A = (ATTACK*)malloc(sizeof(ATTACK));
6042 LC[cil].A->name = [@"新技" retain];
6043 LC[cil].A->rangeA = 1;
6044 LC[cil].A->rangeB = 1;
6045 LC[cil].A->extent = 0;
6046 LC[cil].A->successRate = 100;
6047 LC[cil].A->costType = 0;
6048 LC[cil].A->type = 0;
6049 LC[cil].A = [self initAfuckingSTATUS2:LC[cil].A];
6050 LC[cil].A->D = NULL;
6051 LC[cil].A->E = NULL;
6052 LC[cil].A->next = NULL;
6054 }else if(clickedRowAT > 0){
6055 for (int i = 0; i < clickedRowAT-1;i++)
6056 LC[cil].A = LC[cil].A->next;
6057 ATTACK *tmp = (ATTACK*)malloc(sizeof(ATTACK));
6058 *tmp = *LC[cil].A->next;
6059 LC[cil].A->next = (ATTACK*)malloc(sizeof(ATTACK));
6060 LC[cil].A->next->next = tmp;
6061 LC[cil].A = LC[cil].A->next;
6063 LC[cil].A->name = [@"新技" retain];
6064 LC[cil].A->rangeA = 1;
6065 LC[cil].A->rangeB = 1;
6066 LC[cil].A->extent = 0;
6067 LC[cil].A->successRate = 100;
6068 LC[cil].A->costType = 0;
6069 LC[cil].A->type = 0;
6070 LC[cil].A = [self initAfuckingSTATUS2:LC[cil].A];
6071 LC[cil].A->D = NULL;
6072 LC[cil].A->E = NULL;
6075 ATTACK *tmp = (ATTACK*)malloc(sizeof(ATTACK));
6076 tmp->next = LC[cil].A;
6077 // INIT 処理[self InitAttack:tmp];
6078 tmp->name = [@"新技" retain];
6083 tmp->successRate = 100;
6086 tmp = [self initAfuckingSTATUS2:tmp];
6094 [dict setValue:[NSString stringWithFormat:@"%@", LC[cil].A->name] forKey:@"name"];
6096 [self willChangeValueForKey:@"attackListMA"];
6097 [attackListMA insertObject:dict atIndex:clickedRowAT];
6098 [self didChangeValueForKey:@"attackListMA"];
6099 [attackListAC setSelectionIndex:clickedRowAT];
6100 LC[cil].attackListNum++;
6107 -(ATTACK*)initAttackData:(ATTACK*)A{
6110 A->name = [@"新技" retain];
6111 A->msg = [@"" retain];
6121 A->successRate = 100;
6136 A->AN.movName = [@"" retain];
6141 -(ATTACK*)initAfuckingSTATUS2:(ATTACK*)A{
6153 A->successRate = 100;
6180 -(IBAction)removeAttackList:(id)sender{
6184 ATTACK *Atop = EQ[clickIndexEQ].A;
6186 if(clickedRowAT == -1){
6187 clickedRowAT = (int)[attackListMA count] - 1;
6190 if([attackListMA count] > 0){
6192 if(clickedRowAT == 0){
6193 EQ[clickIndexEQ].A = Atop;
6194 EQ[clickIndexEQ].A = EQ[clickIndexEQ].A->next;
6195 Atop = EQ[clickIndexEQ].A;
6196 }else if(clickedRowAT == [attackListMA count] - 1){
6197 EQ[clickIndexEQ].A = Atop;
6198 while(EQ[clickIndexEQ].A->next->next){
6199 EQ[clickIndexEQ].A = EQ[clickIndexEQ].A->next;
6201 EQ[clickIndexEQ].A->next = NULL;
6203 EQ[clickIndexEQ].A = Atop;
6204 for (int i = 0; i < clickedRowAT - 1;i++)
6205 EQ[clickIndexEQ].A = EQ[clickIndexEQ].A->next;
6206 EQ[clickIndexEQ].A->next = EQ[clickIndexEQ].A->next->next;
6209 [self willChangeValueForKey:@"attackListMA"];
6210 [attackListMA removeObjectAtIndex:clickedRowAT];
6211 [self didChangeValueForKey:@"attackListMA"];
6212 [attackListAC setSelectionIndex:clickedRowAT-1];
6213 if(clickedRowAT < 0) [attackListAC setSelectionIndex:[attackListMA count]-1];
6214 if(clickedRowAT == 0) [attackListAC setSelectionIndex:0];
6215 if(clickedRowAT > 0) clickedRowAT--;
6217 EQ[clickIndexEQ].A = Atop;
6218 EQ[clickIndexEQ].attackListNum--;
6224 if(!loadChipSideFlag){
6226 ATTACK *Atop = UC[clickIndex].A;
6228 if(clickedRowAT == -1){
6229 clickedRowAT = (int)[attackListMA count] - 1;
6232 if([attackListMA count] > 0){
6234 if(clickedRowAT == 0){
6235 UC[clickIndex].A = Atop;
6236 UC[clickIndex].A = UC[clickIndex].A->next;
6237 Atop = UC[clickIndex].A;
6238 }else if(clickedRowAT == [attackListMA count] - 1){
6239 UC[clickIndex].A = Atop;
6240 while(UC[clickIndex].A->next->next){
6241 UC[clickIndex].A = UC[clickIndex].A->next;
6243 UC[clickIndex].A->next = NULL;
6245 UC[clickIndex].A = Atop;
6246 for (int i = 0; i < clickedRowAT - 1;i++)
6247 UC[clickIndex].A = UC[clickIndex].A->next;
6248 UC[clickIndex].A->next = UC[clickIndex].A->next->next;
6251 [self willChangeValueForKey:@"attackListMA"];
6252 [attackListMA removeObjectAtIndex:clickedRowAT];
6253 [self didChangeValueForKey:@"attackListMA"];
6254 [attackListAC setSelectionIndex:clickedRowAT-1];
6255 if(clickedRowAT < 0) [attackListAC setSelectionIndex:[attackListMA count]-1];
6256 if(clickedRowAT == 0) [attackListAC setSelectionIndex:0];
6257 if(clickedRowAT > 0) clickedRowAT--;
6259 UC[clickIndex].A = Atop;
6260 UC[clickIndex].attackListNum--;
6262 ATTACK *Atop = LC[cil].A;
6264 if(clickedRowAT == -1){
6265 clickedRowAT = (int)[attackListMA count] - 1;
6268 if([attackListMA count] > 0){
6270 if(clickedRowAT == 0){
6272 LC[cil].A = LC[cil].A->next;
6274 }else if(clickedRowAT == [attackListMA count] - 1){
6276 while(LC[cil].A->next->next){
6277 LC[cil].A = LC[cil].A->next;
6279 LC[cil].A->next = NULL;
6282 for (int i = 0; i < clickedRowAT - 1;i++)
6283 LC[cil].A = LC[cil].A->next;
6284 LC[cil].A->next = LC[cil].A->next->next;
6287 [self willChangeValueForKey:@"attackListMA"];
6288 [attackListMA removeObjectAtIndex:clickedRowAT];
6289 [self didChangeValueForKey:@"attackListMA"];
6290 [attackListAC setSelectionIndex:clickedRowAT-1];
6291 if(clickedRowAT < 0) [attackListAC setSelectionIndex:[attackListMA count]-1];
6292 if(clickedRowAT == 0) [attackListAC setSelectionIndex:0];
6293 if(clickedRowAT > 0) clickedRowAT--;
6296 LC[cil].attackListNum--;
6305 -(IBAction)submitAttackList:(id)sender{
6309 ATTACK *Atop = EQ[clickIndexEQ].A;
6312 for(int i = 0;i < clickIndexAL;i++){
6313 EQ[clickIndexEQ].A = EQ[clickIndexEQ].A->next;
6316 EQ[clickIndexEQ].A->name = [[ALTFname stringValue] retain];
6317 EQ[clickIndexEQ].A->rangeA = [ALTFrangeA intValue];
6318 EQ[clickIndexEQ].A->rangeB = [ALTFrangeB intValue];
6319 EQ[clickIndexEQ].A->extent = [ALTFextend intValue];
6321 EQ[clickIndexEQ].A->trig = [ALTFtrigger intValue];
6322 EQ[clickIndexEQ].A->melee = [ALTFmelee intValue];
6323 EQ[clickIndexEQ].A->P = [ALTFpass intValue];
6324 EQ[clickIndexEQ].A->dmgExtend = [ALTFdmgExtent intValue];
6325 EQ[clickIndexEQ].A->type = (int)[ALPUBwType indexOfSelectedItem];
6326 EQ[clickIndexEQ].A->imagine = [ALTFimagine intValue];
6328 if([ALPUBcost indexOfSelectedItem] == 0){
6329 EQ[clickIndexEQ].A->costType = 0;
6330 EQ[clickIndexEQ].A->MP = [ALTFcost intValue];
6331 EQ[clickIndexEQ].A->pMP = [ALTFcostP intValue];
6332 EQ[clickIndexEQ].A->AP = 0;
6333 EQ[clickIndexEQ].A->pAP = 0;
6334 EQ[clickIndexEQ].A->HP = 0;
6335 EQ[clickIndexEQ].A->pHP = 0;
6337 if([ALPUBcost indexOfSelectedItem] == 1){
6338 EQ[clickIndexEQ].A->costType = 1;
6339 EQ[clickIndexEQ].A->MP = 0;
6340 EQ[clickIndexEQ].A->pMP = 0;
6341 EQ[clickIndexEQ].A->HP = 0;
6342 EQ[clickIndexEQ].A->pHP = 0;
6343 EQ[clickIndexEQ].A->AP = [ALTFcost intValue];
6344 EQ[clickIndexEQ].A->pAP = [ALTFcostP intValue];
6346 if([ALPUBcost indexOfSelectedItem] == 2){
6347 EQ[clickIndexEQ].A->costType = 2;
6348 EQ[clickIndexEQ].A->MP = 0;
6349 EQ[clickIndexEQ].A->pMP = 0;
6350 EQ[clickIndexEQ].A->AP = 0;
6351 EQ[clickIndexEQ].A->pAP = 0;
6352 EQ[clickIndexEQ].A->HP = [ALTFcost intValue];
6353 EQ[clickIndexEQ].A->pHP = [ALTFcostP intValue];
6356 EQ[clickIndexEQ].A->bullet = [ALTFbullet intValue];
6357 EQ[clickIndexEQ].A->hitCount = [ALTFhitCount intValue];
6358 EQ[clickIndexEQ].A->successRate = [ALTFsuccessRate intValue];
6359 EQ[clickIndexEQ].A->vigor = [ALTFvigor intValue];
6360 EQ[clickIndexEQ].A->hitPercent = [ALTFhitRate intValue];
6362 EQ[clickIndexEQ].A->riku = (int)[ALPUBriku indexOfSelectedItem];
6363 EQ[clickIndexEQ].A->chu = (int)[ALPUBchu indexOfSelectedItem];
6364 EQ[clickIndexEQ].A->umi = (int)[ALPUBumi indexOfSelectedItem];
6365 EQ[clickIndexEQ].A->sora = (int)[ALPUBsora indexOfSelectedItem];
6367 EQ[clickIndexEQ].A->cSupply = [ALTFcSupply intValue];
6368 EQ[clickIndexEQ].A->cFood = [ALTFcFood intValue];
6369 EQ[clickIndexEQ].A->cMoney = [ALTFcMoney intValue];
6371 EQ[clickIndexEQ].A->cmd = [[ALTFcmd stringValue] retain];
6373 EQ[clickIndexEQ].A->msg = [[ALTFmsg stringValue] retain];
6376 EQ[clickIndexEQ].A = Atop;
6378 [self initAttackListEQ];
6379 [self saveDataALEQ];
6380 [attackListAC setSelectionIndex:clickIndexAL];
6382 [UCLPanelAttackDetail close];
6386 if(!loadChipSideFlag){
6387 ATTACK *Atop = UC[clickIndex].A;
6390 for(int i = 0;i < clickIndexAL;i++){
6391 UC[clickIndex].A = UC[clickIndex].A->next;
6394 UC[clickIndex].A->name = [[ALTFname stringValue] retain];
6395 UC[clickIndex].A->rangeA = [ALTFrangeA intValue];
6396 UC[clickIndex].A->rangeB = [ALTFrangeB intValue];
6397 UC[clickIndex].A->extent = [ALTFextend intValue];
6399 UC[clickIndex].A->trig = [ALTFtrigger intValue];
6400 UC[clickIndex].A->melee = [ALTFmelee intValue];
6401 UC[clickIndex].A->P = [ALTFpass intValue];
6402 UC[clickIndex].A->dmgExtend = [ALTFdmgExtent intValue];
6403 UC[clickIndex].A->type = (int)[ALPUBwType indexOfSelectedItem];
6404 UC[clickIndex].A->imagine = [ALTFimagine intValue];
6406 if([ALPUBcost indexOfSelectedItem] == 0){
6407 UC[clickIndex].A->costType = 0;
6408 UC[clickIndex].A->MP = [ALTFcost intValue];
6409 UC[clickIndex].A->pMP = [ALTFcostP intValue];
6410 UC[clickIndex].A->AP = 0;
6411 UC[clickIndex].A->pAP = 0;
6412 UC[clickIndex].A->HP = 0;
6413 UC[clickIndex].A->pHP = 0;
6415 if([ALPUBcost indexOfSelectedItem] == 1){
6416 UC[clickIndex].A->costType = 1;
6417 UC[clickIndex].A->MP = 0;
6418 UC[clickIndex].A->pMP = 0;
6419 UC[clickIndex].A->HP = 0;
6420 UC[clickIndex].A->pHP = 0;
6421 UC[clickIndex].A->AP = [ALTFcost intValue];
6422 UC[clickIndex].A->pAP = [ALTFcostP intValue];
6424 if([ALPUBcost indexOfSelectedItem] == 2){
6425 UC[clickIndex].A->costType = 2;
6426 UC[clickIndex].A->MP = 0;
6427 UC[clickIndex].A->pMP = 0;
6428 UC[clickIndex].A->AP = 0;
6429 UC[clickIndex].A->pAP = 0;
6430 UC[clickIndex].A->HP = [ALTFcost intValue];
6431 UC[clickIndex].A->pHP = [ALTFcostP intValue];
6434 UC[clickIndex].A->bullet = [ALTFbullet intValue];
6435 UC[clickIndex].A->hitCount = [ALTFhitCount intValue];
6436 UC[clickIndex].A->successRate = [ALTFsuccessRate intValue];
6437 UC[clickIndex].A->vigor = [ALTFvigor intValue];
6438 UC[clickIndex].A->hitPercent = [ALTFhitRate intValue];
6440 UC[clickIndex].A->riku = (int)[ALPUBriku indexOfSelectedItem];
6441 UC[clickIndex].A->chu = (int)[ALPUBchu indexOfSelectedItem];
6442 UC[clickIndex].A->umi = (int)[ALPUBumi indexOfSelectedItem];
6443 UC[clickIndex].A->sora = (int)[ALPUBsora indexOfSelectedItem];
6445 UC[clickIndex].A->cSupply = [ALTFcSupply intValue];
6446 UC[clickIndex].A->cFood = [ALTFcFood intValue];
6447 UC[clickIndex].A->cMoney = [ALTFcMoney intValue];
6449 UC[clickIndex].A->cmd = [[ALTFcmd stringValue] retain];
6451 UC[clickIndex].A->msg = [[ALTFmsg stringValue] retain];
6454 UC[clickIndex].A = Atop;
6456 [self initAttackList];
6458 [attackListAC setSelectionIndex:clickIndexAL];
6461 ATTACK *Atop = LC[cil].A;
6464 for(int i = 0;i < clickIndexAL;i++){
6465 LC[cil].A = LC[cil].A->next;
6468 LC[cil].A->name = [[ALTFname stringValue] retain];
6469 LC[cil].A->rangeA = [ALTFrangeA intValue];
6470 LC[cil].A->rangeB = [ALTFrangeB intValue];
6471 LC[cil].A->extent = [ALTFextend intValue];
6473 LC[cil].A->trig = [ALTFtrigger intValue];
6474 LC[cil].A->melee = [ALTFmelee intValue];
6475 LC[cil].A->P = [ALTFpass intValue];
6476 LC[cil].A->dmgExtend = [ALTFdmgExtent intValue];
6477 LC[cil].A->type = (int)[ALPUBwType indexOfSelectedItem];
6478 LC[cil].A->imagine = [ALTFimagine intValue];
6480 if([ALPUBcost indexOfSelectedItem] == 0){
6481 LC[cil].A->costType = 0;
6482 LC[cil].A->EN = [ALTFcost intValue];
6483 LC[cil].A->pEN = [ALTFcostP intValue];
6487 if([ALPUBcost indexOfSelectedItem] == 1){
6488 LC[cil].A->costType = 1;
6491 UC[clickIndex].A->HP = [ALTFcost intValue];
6492 UC[clickIndex].A->pHP = [ALTFcostP intValue];
6496 LC[cil].A->bullet = [ALTFbullet intValue];
6497 LC[cil].A->hitCount = [ALTFhitCount intValue];
6498 LC[cil].A->successRate = [ALTFsuccessRate intValue];
6499 LC[cil].A->vigor = [ALTFvigor intValue];
6500 LC[cil].A->hitPercent = [ALTFhitRate intValue];
6502 LC[cil].A->riku = (int)[ALPUBriku indexOfSelectedItem];
6503 LC[cil].A->chu = (int)[ALPUBchu indexOfSelectedItem];
6504 LC[cil].A->umi = (int)[ALPUBumi indexOfSelectedItem];
6505 LC[cil].A->sora = (int)[ALPUBsora indexOfSelectedItem];
6507 LC[cil].A->cSupply = [ALTFcSupply intValue];
6508 LC[cil].A->cFood = [ALTFcFood intValue];
6509 LC[cil].A->cMoney = [ALTFcMoney intValue];
6511 LC[cil].A->cmd = [[ALTFcmd stringValue] retain];
6513 LC[cil].A->msg = [[ALTFmsg stringValue] retain];
6518 [self initAttackList2];
6520 [attackListAC setSelectionIndex:clickIndexAL];
6530 [UCLPanelAttackDetail close];
6533 -(IBAction)insertDamageList:(id)sender{
6536 NSMutableDictionary* dict = [NSMutableDictionary new];
6538 if([ALPUBtype indexOfSelectedItem] == 0)
6539 [dict setValue:[NSString stringWithFormat:@"攻%d+%d%", [ALTFdmgCount intValue], [ALTFdmgRate intValue]] forKey:@"count"];
6540 if([ALPUBtype indexOfSelectedItem] == 1)
6541 [dict setValue:[NSString stringWithFormat:@"防%d+%d%", [ALTFdmgCount intValue], [ALTFdmgRate intValue]] forKey:@"count"];
6542 if([ALPUBtype indexOfSelectedItem] == 2)
6543 [dict setValue:[NSString stringWithFormat:@"命%d+%d%", [ALTFdmgCount intValue], [ALTFdmgRate intValue]] forKey:@"count"];
6544 if([ALPUBtype indexOfSelectedItem] == 3)
6545 [dict setValue:[NSString stringWithFormat:@"回%d+%d%", [ALTFdmgCount intValue], [ALTFdmgRate intValue]] forKey:@"count"];
6546 if([ALPUBtype indexOfSelectedItem] == 4)
6547 [dict setValue:[NSString stringWithFormat:@"演%d+%d%", [ALTFdmgCount intValue], [ALTFdmgRate intValue]] forKey:@"count"];
6548 if([ALPUBtype indexOfSelectedItem] == 5)
6549 [dict setValue:[NSString stringWithFormat:@"会%d+%d%", [ALTFdmgCount intValue], [ALTFdmgRate intValue]] forKey:@"count"];
6553 if([ALPUBsort indexOfSelectedItem] == 0) str = [NSString stringWithFormat:@"ダ・"];
6554 if([ALPUBsort indexOfSelectedItem] == 1) str = [NSString stringWithFormat:@"回・"];
6555 if([ALPUBsort indexOfSelectedItem] == 2) str = [NSString stringWithFormat:@"復・"];
6556 if([ALPUBsort indexOfSelectedItem] == 3) str = [NSString stringWithFormat:@"減・"];
6557 if([ALPUBsort indexOfSelectedItem] == 4) str = [NSString stringWithFormat:@"増・"];
6558 if([ALPUBsort indexOfSelectedItem] == 5) str = [NSString stringWithFormat:@"毒・"];
6559 if([ALPUBsort indexOfSelectedItem] == 6) str = [NSString stringWithFormat:@"睡・"];
6560 if([ALPUBsort indexOfSelectedItem] == 7) str = [NSString stringWithFormat:@"混・"];
6561 if([ALPUBsort indexOfSelectedItem] == 8) str = [NSString stringWithFormat:@"麻・"];
6562 if([ALPUBsort indexOfSelectedItem] == 9) str = [NSString stringWithFormat:@"沈・"];
6563 if([ALPUBsort indexOfSelectedItem] == 10) str = [NSString stringWithFormat:@"魅・"];
6565 if([ALPUBseed indexOfSelectedItem] == 0) str = [str stringByAppendingFormat:@"打撃"];
6566 if([ALPUBseed indexOfSelectedItem] == 1) str = [str stringByAppendingFormat:@"斬撃"];
6567 if([ALPUBseed indexOfSelectedItem] == 2) str = [str stringByAppendingFormat:@"突き"];
6568 if([ALPUBseed indexOfSelectedItem] == 3) str = [str stringByAppendingFormat:@"射手"];
6569 if([ALPUBseed indexOfSelectedItem] == 4) str = [str stringByAppendingFormat:@"銃撃"];
6570 if([ALPUBseed indexOfSelectedItem] == 5) str = [str stringByAppendingFormat:@"砲撃"];
6571 if([ALPUBseed indexOfSelectedItem] == 6) str = [str stringByAppendingFormat:@"火炎"];
6572 if([ALPUBseed indexOfSelectedItem] == 7) str = [str stringByAppendingFormat:@"冷気"];
6573 if([ALPUBseed indexOfSelectedItem] == 8) str = [str stringByAppendingFormat:@"電撃"];
6574 if([ALPUBseed indexOfSelectedItem] == 9) str = [str stringByAppendingFormat:@"風圧"];
6575 if([ALPUBseed indexOfSelectedItem] == 10) str = [str stringByAppendingFormat:@"流水"];
6576 if([ALPUBseed indexOfSelectedItem] == 11) str = [str stringByAppendingFormat:@"ガス"];
6577 if([ALPUBseed indexOfSelectedItem] == 12) str = [str stringByAppendingFormat:@"神聖"];
6578 if([ALPUBseed indexOfSelectedItem] == 13) str = [str stringByAppendingFormat:@"暗黒"];
6579 if([ALPUBseed indexOfSelectedItem] == 14) str = [str stringByAppendingFormat:@"爆撃"];
6580 if([ALPUBseed indexOfSelectedItem] == 15) str = [str stringByAppendingFormat:@"流血"];
6582 if([ALBCnormal state] == YES) str = [str stringByAppendingFormat:@"通"];
6583 if([ALBCarchery state] == YES) str = [str stringByAppendingFormat:@"弓"];
6584 if([ALBCgun state] == YES) str = [str stringByAppendingFormat:@"銃"];
6586 ATTACK *aTop = EQ[clickIndexEQ].A;
6587 for(int k = 0;k < clickIndexAL;k++) {
6588 EQ[clickIndexEQ].A = EQ[clickIndexEQ].A->next;
6591 DAMAGE *Dtop = EQ[clickIndexEQ].A->D;
6592 if(!EQ[clickIndexEQ].A->D){
6593 EQ[clickIndexEQ].A->D = calloc(1, sizeof(DAMAGE));
6594 Dtop = EQ[clickIndexEQ].A->D;
6596 while(EQ[clickIndexEQ].A->D->next){
6597 EQ[clickIndexEQ].A->D = EQ[clickIndexEQ].A->D->next;
6600 if([damageListMA count] >= 1){
6601 EQ[clickIndexEQ].A->D->next = calloc(1, sizeof(DAMAGE));
6602 EQ[clickIndexEQ].A->D = EQ[clickIndexEQ].A->D->next;
6604 EQ[clickIndexEQ].A->D->next = NULL;//Dtop;
6605 EQ[clickIndexEQ].A->D->count = [ALTFdmgCount intValue];
6606 EQ[clickIndexEQ].A->D->pCount = [ALTFdmgRate intValue];
6607 EQ[clickIndexEQ].A->D->type = (int)[ALPUBtype indexOfSelectedItem];
6608 EQ[clickIndexEQ].A->D->seed = (int)[ALPUBseed indexOfSelectedItem];
6609 EQ[clickIndexEQ].A->D->sort = (int)[ALPUBsort indexOfSelectedItem];
6610 EQ[clickIndexEQ].A->D->beam = [ALTFbeam intValue];
6611 EQ[clickIndexEQ].A->D->absolute = [ALTFabsolute intValue];
6612 EQ[clickIndexEQ].A->D->noSizeFix = [ALTFnoSizeFix intValue];
6613 EQ[clickIndexEQ].A->D->continium = [ALTFcontinuum intValue];
6614 if([ALBCnormal intValue] != 0)
6615 EQ[clickIndexEQ].A->D->fix = 0;
6616 else if([ALBCarchery intValue] != 0)
6617 EQ[clickIndexEQ].A->D->fix = 1;
6618 else if([ALBCgun intValue] != 0)
6619 EQ[clickIndexEQ].A->D->fix = 2;
6621 [self setTotalDamageEQ:(int)clickIndex row:clickedRowAT];
6623 [dict setValue:[NSString stringWithFormat:@"%@", str] forKey:@"type"];
6624 [self willChangeValueForKey:@"damageListMA"];
6625 [damageListMA addObject:dict];
6626 [self didChangeValueForKey:@"damageListMA"];
6627 [damageListAC setSelectionIndex:[damageListTV selectedRow]];
6629 EQ[clickIndexEQ].A->D = Dtop;
6631 EQ[clickIndexEQ].A = aTop;
6638 if(!loadChipSideFlag){
6639 NSMutableDictionary* dict = [NSMutableDictionary new];
6641 if([ALPUBtype indexOfSelectedItem] == 0)
6642 [dict setValue:[NSString stringWithFormat:@"攻%d+%d%", [ALTFdmgCount intValue], [ALTFdmgRate intValue]] forKey:@"count"];
6643 if([ALPUBtype indexOfSelectedItem] == 1)
6644 [dict setValue:[NSString stringWithFormat:@"防%d+%d%", [ALTFdmgCount intValue], [ALTFdmgRate intValue]] forKey:@"count"];
6645 if([ALPUBtype indexOfSelectedItem] == 2)
6646 [dict setValue:[NSString stringWithFormat:@"命%d+%d%", [ALTFdmgCount intValue], [ALTFdmgRate intValue]] forKey:@"count"];
6647 if([ALPUBtype indexOfSelectedItem] == 3)
6648 [dict setValue:[NSString stringWithFormat:@"回%d+%d%", [ALTFdmgCount intValue], [ALTFdmgRate intValue]] forKey:@"count"];
6649 if([ALPUBtype indexOfSelectedItem] == 4)
6650 [dict setValue:[NSString stringWithFormat:@"演%d+%d%", [ALTFdmgCount intValue], [ALTFdmgRate intValue]] forKey:@"count"];
6651 if([ALPUBtype indexOfSelectedItem] == 5)
6652 [dict setValue:[NSString stringWithFormat:@"会%d+%d%", [ALTFdmgCount intValue], [ALTFdmgRate intValue]] forKey:@"count"];
6656 if([ALPUBsort indexOfSelectedItem] == 0) str = [NSString stringWithFormat:@"ダ・"];
6657 if([ALPUBsort indexOfSelectedItem] == 1) str = [NSString stringWithFormat:@"回・"];
6658 if([ALPUBsort indexOfSelectedItem] == 2) str = [NSString stringWithFormat:@"復・"];
6659 if([ALPUBsort indexOfSelectedItem] == 3) str = [NSString stringWithFormat:@"減・"];
6660 if([ALPUBsort indexOfSelectedItem] == 4) str = [NSString stringWithFormat:@"増・"];
6661 if([ALPUBsort indexOfSelectedItem] == 5) str = [NSString stringWithFormat:@"毒・"];
6662 if([ALPUBsort indexOfSelectedItem] == 6) str = [NSString stringWithFormat:@"睡・"];
6663 if([ALPUBsort indexOfSelectedItem] == 7) str = [NSString stringWithFormat:@"混・"];
6664 if([ALPUBsort indexOfSelectedItem] == 8) str = [NSString stringWithFormat:@"麻・"];
6665 if([ALPUBsort indexOfSelectedItem] == 9) str = [NSString stringWithFormat:@"沈・"];
6666 if([ALPUBsort indexOfSelectedItem] == 10) str = [NSString stringWithFormat:@"魅・"];
6668 if([ALPUBseed indexOfSelectedItem] == 0) str = [str stringByAppendingFormat:@"打撃"];
6669 if([ALPUBseed indexOfSelectedItem] == 1) str = [str stringByAppendingFormat:@"斬撃"];
6670 if([ALPUBseed indexOfSelectedItem] == 2) str = [str stringByAppendingFormat:@"突き"];
6671 if([ALPUBseed indexOfSelectedItem] == 3) str = [str stringByAppendingFormat:@"射手"];
6672 if([ALPUBseed indexOfSelectedItem] == 4) str = [str stringByAppendingFormat:@"銃撃"];
6673 if([ALPUBseed indexOfSelectedItem] == 5) str = [str stringByAppendingFormat:@"砲撃"];
6674 if([ALPUBseed indexOfSelectedItem] == 6) str = [str stringByAppendingFormat:@"火炎"];
6675 if([ALPUBseed indexOfSelectedItem] == 7) str = [str stringByAppendingFormat:@"冷気"];
6676 if([ALPUBseed indexOfSelectedItem] == 8) str = [str stringByAppendingFormat:@"電撃"];
6677 if([ALPUBseed indexOfSelectedItem] == 9) str = [str stringByAppendingFormat:@"風圧"];
6678 if([ALPUBseed indexOfSelectedItem] == 10) str = [str stringByAppendingFormat:@"流水"];
6679 if([ALPUBseed indexOfSelectedItem] == 11) str = [str stringByAppendingFormat:@"ガス"];
6680 if([ALPUBseed indexOfSelectedItem] == 12) str = [str stringByAppendingFormat:@"神聖"];
6681 if([ALPUBseed indexOfSelectedItem] == 13) str = [str stringByAppendingFormat:@"暗黒"];
6682 if([ALPUBseed indexOfSelectedItem] == 14) str = [str stringByAppendingFormat:@"爆撃"];
6683 if([ALPUBseed indexOfSelectedItem] == 15) str = [str stringByAppendingFormat:@"流血"];
6686 if([ALBCnormal state] == YES) str = [str stringByAppendingFormat:@"通"];
6687 if([ALBCarchery state] == YES) str = [str stringByAppendingFormat:@"弓"];
6688 if([ALBCgun state] == YES) str = [str stringByAppendingFormat:@"銃"];
6690 ATTACK *aTop = UC[clickIndex].A;
6691 for(int k = 0;k < clickIndexAL;k++) {
6692 UC[clickIndex].A = UC[clickIndex].A->next;
6695 DAMAGE *Dtop = UC[clickIndex].A->D;
6696 if(!UC[clickIndex].A->D){
6697 UC[clickIndex].A->D = calloc(1, sizeof(DAMAGE));
6698 Dtop = UC[clickIndex].A->D;
6700 while(UC[clickIndex].A->D->next){
6701 UC[clickIndex].A->D = UC[clickIndex].A->D->next;
6704 if([damageListMA count] >= 1){
6705 UC[clickIndex].A->D->next = calloc(1, sizeof(DAMAGE));
6706 UC[clickIndex].A->D = UC[clickIndex].A->D->next;
6708 UC[clickIndex].A->D->next = NULL;//Dtop;
6709 UC[clickIndex].A->D->count = [ALTFdmgCount intValue];
6710 UC[clickIndex].A->D->pCount = [ALTFdmgRate intValue];
6711 UC[clickIndex].A->D->type = (int)[ALPUBtype indexOfSelectedItem];
6712 UC[clickIndex].A->D->seed = (int)[ALPUBseed indexOfSelectedItem];
6713 UC[clickIndex].A->D->sort = (int)[ALPUBsort indexOfSelectedItem];
6714 UC[clickIndex].A->D->beam = [ALTFbeam intValue];
6715 UC[clickIndex].A->D->absolute = [ALTFabsolute intValue];
6716 UC[clickIndex].A->D->noSizeFix = [ALTFnoSizeFix intValue];
6717 UC[clickIndex].A->D->continium = [ALTFcontinuum intValue];
6718 if([ALBCnormal intValue] != 0)
6719 UC[clickIndex].A->D->fix = 0;
6720 else if([ALBCarchery intValue] != 0)
6721 UC[clickIndex].A->D->fix = 1;
6722 else if([ALBCgun intValue] != 0)
6723 UC[clickIndex].A->D->fix = 2;
6725 [self setTotalDamage:(int)clickIndex row:clickedRowAT];
6727 [dict setValue:[NSString stringWithFormat:@"%@", str] forKey:@"type"];
6728 [self willChangeValueForKey:@"damageListMA"];
6729 [damageListMA addObject:dict];
6730 [self didChangeValueForKey:@"damageListMA"];
6731 [damageListAC setSelectionIndex:[damageListTV selectedRow]];
6733 UC[clickIndex].A->D = Dtop;
6735 UC[clickIndex].A = aTop;
6738 NSMutableDictionary* dict = [NSMutableDictionary new];
6740 [dict setValue:[NSString stringWithFormat:@"攻%d+%d%", [ALTFdmgCount intValue], [ALTFdmgRate intValue]] forKey:@"count"];
6744 if([ALPUBsort indexOfSelectedItem] == 0) str = [NSString stringWithFormat:@"ダ・"];
6745 if([ALPUBsort indexOfSelectedItem] == 1) str = [NSString stringWithFormat:@"回・"];
6746 if([ALPUBsort indexOfSelectedItem] == 2) str = [NSString stringWithFormat:@"復・"];
6747 if([ALPUBsort indexOfSelectedItem] == 3) str = [NSString stringWithFormat:@"減・"];
6748 if([ALPUBsort indexOfSelectedItem] == 4) str = [NSString stringWithFormat:@"増・"];
6749 if([ALPUBsort indexOfSelectedItem] == 5) str = [NSString stringWithFormat:@"毒・"];
6750 if([ALPUBsort indexOfSelectedItem] == 6) str = [NSString stringWithFormat:@"睡・"];
6751 if([ALPUBsort indexOfSelectedItem] == 7) str = [NSString stringWithFormat:@"混・"];
6752 if([ALPUBsort indexOfSelectedItem] == 8) str = [NSString stringWithFormat:@"麻・"];
6753 if([ALPUBsort indexOfSelectedItem] == 9) str = [NSString stringWithFormat:@"沈・"];
6754 if([ALPUBsort indexOfSelectedItem] == 10) str = [NSString stringWithFormat:@"魅・"];
6756 if([ALPUBseed indexOfSelectedItem] == 0) str = [str stringByAppendingFormat:@"打撃"];
6757 if([ALPUBseed indexOfSelectedItem] == 1) str = [str stringByAppendingFormat:@"斬撃"];
6758 if([ALPUBseed indexOfSelectedItem] == 2) str = [str stringByAppendingFormat:@"突き"];
6759 if([ALPUBseed indexOfSelectedItem] == 3) str = [str stringByAppendingFormat:@"射手"];
6760 if([ALPUBseed indexOfSelectedItem] == 4) str = [str stringByAppendingFormat:@"銃撃"];
6761 if([ALPUBseed indexOfSelectedItem] == 5) str = [str stringByAppendingFormat:@"砲撃"];
6762 if([ALPUBseed indexOfSelectedItem] == 6) str = [str stringByAppendingFormat:@"火炎"];
6763 if([ALPUBseed indexOfSelectedItem] == 7) str = [str stringByAppendingFormat:@"冷気"];
6764 if([ALPUBseed indexOfSelectedItem] == 8) str = [str stringByAppendingFormat:@"電撃"];
6765 if([ALPUBseed indexOfSelectedItem] == 9) str = [str stringByAppendingFormat:@"風圧"];
6766 if([ALPUBseed indexOfSelectedItem] == 10) str = [str stringByAppendingFormat:@"流水"];
6767 if([ALPUBseed indexOfSelectedItem] == 11) str = [str stringByAppendingFormat:@"ガス"];
6768 if([ALPUBseed indexOfSelectedItem] == 12) str = [str stringByAppendingFormat:@"神聖"];
6769 if([ALPUBseed indexOfSelectedItem] == 13) str = [str stringByAppendingFormat:@"暗黒"];
6770 if([ALPUBseed indexOfSelectedItem] == 14) str = [str stringByAppendingFormat:@"爆撃"];
6771 if([ALPUBseed indexOfSelectedItem] == 15) str = [str stringByAppendingFormat:@"流血"];
6773 if([ALBCnormal state] == YES) str = [str stringByAppendingFormat:@"通"];
6774 if([ALBCarchery state] == YES) str = [str stringByAppendingFormat:@"弓"];
6775 if([ALBCgun state] == YES) str = [str stringByAppendingFormat:@"銃"];
6778 ATTACK *aTop = LC[cil].A;
6779 for(int k = 0;k < clickIndexAL;k++) {
6780 LC[cil].A = LC[cil].A->next;
6783 DAMAGE *Dtop = LC[cil].A->D;
6785 LC[cil].A->D = calloc(1, sizeof(DAMAGE));
6786 Dtop = LC[cil].A->D;
6788 while(LC[cil].A->D->next){
6789 LC[cil].A->D = LC[cil].A->D->next;
6792 if([damageListMA count] >= 1){
6793 LC[cil].A->D->next = calloc(1, sizeof(DAMAGE));
6794 LC[cil].A->D = LC[cil].A->D->next;
6796 LC[cil].A->D->next = NULL;//Dtop;
6797 LC[cil].A->D->count = [ALTFdmgCount intValue];
6798 LC[cil].A->D->pCount = [ALTFdmgRate intValue];
6799 LC[cil].A->D->type = (int)[ALPUBtype indexOfSelectedItem];
6800 LC[cil].A->D->seed = (int)[ALPUBseed indexOfSelectedItem];
6801 LC[cil].A->D->sort = (int)[ALPUBsort indexOfSelectedItem];
6802 LC[cil].A->D->beam = [ALTFbeam intValue];
6803 LC[cil].A->D->absolute = [ALTFabsolute intValue];
6804 LC[cil].A->D->noSizeFix = [ALTFnoSizeFix intValue];
6805 LC[cil].A->D->continium = [ALTFcontinuum intValue];
6806 if([ALBCnormal intValue] != 0)
6807 LC[cil].A->D->fix = 0;
6808 else if([ALBCarchery intValue] != 0)
6809 LC[cil].A->D->fix = 1;
6810 else if([ALBCgun intValue] != 0)
6811 LC[cil].A->D->fix = 2;
6813 [self setTotalDamage2:(int)clickIndex row:clickedRowAT];
6815 [dict setValue:[NSString stringWithFormat:@"%@", str] forKey:@"type"];
6816 [self willChangeValueForKey:@"damageListMA"];
6817 [damageListMA addObject:dict];
6818 [self didChangeValueForKey:@"damageListMA"];
6819 [damageListAC setSelectionIndex:[damageListTV selectedRow]];
6821 LC[cil].A->D = Dtop;
6829 -(IBAction)removeDamageList:(id)sender{
6832 if([damageListTV selectedRow] >= 0){
6834 ATTACK *aTop = EQ[clickIndexEQ].A;
6835 for(int k = 0;k < clickIndexAL;k++) {
6836 EQ[clickIndexEQ].A = EQ[clickIndexEQ].A->next;
6838 DAMAGE *dmgNext = NULL;
6839 dmgNext = calloc(1, sizeof(DAMAGE));
6841 int clickIndexDL = (int)[damageListTV selectedRow];
6843 DAMAGE *dTop = EQ[clickIndexEQ].A->D;
6844 for(int k = 0;k < clickIndexDL;k++){
6845 EQ[clickIndexEQ].A->D = EQ[clickIndexEQ].A->D->next;
6848 if(clickIndexDL >= 0 && [damageListMA count] > 0){
6849 if(clickIndexDL == 0){
6850 EQ[clickIndexEQ].A->D = dTop;
6851 EQ[clickIndexEQ].A->D = EQ[clickIndexEQ].A->D->next;
6852 dTop = EQ[clickIndexEQ].A->D;
6853 }else if(clickIndexDL == [damageListMA count] - 1){
6854 EQ[clickIndexEQ].A->D = dTop;
6855 while(EQ[clickIndexEQ].A->D->next->next){
6856 EQ[clickIndexEQ].A->D = EQ[clickIndexEQ].A->D->next;
6858 EQ[clickIndexEQ].A->D->next = NULL;
6860 EQ[clickIndexEQ].A->D = dTop;
6861 for (int i = 0; i < clickIndexDL - 1;i++)
6862 EQ[clickIndexEQ].A->D = EQ[clickIndexEQ].A->D->next;
6863 EQ[clickIndexEQ].A->D->next = EQ[clickIndexEQ].A->D->next->next;
6866 EQ[clickIndexEQ].A->D = dTop;
6868 [self willChangeValueForKey:@"damageListMA"];
6869 [damageListMA removeObjectAtIndex:[damageListTV selectedRow]];
6870 [self didChangeValueForKey:@"damageListMA"];
6871 if([damageListMA count] > 0) [damageListAC setSelectionIndex:[damageListTV selectedRow]-1];
6873 EQ[clickIndexEQ].A = aTop;
6881 if(!loadChipSideFlag){
6882 if([damageListTV selectedRow] >= 0){
6884 ATTACK *aTop = UC[clickIndex].A;
6885 for(int k = 0;k < clickIndexAL;k++) {
6886 UC[clickIndex].A = UC[clickIndex].A->next;
6888 DAMAGE *dmgNext = NULL;
6889 dmgNext = calloc(1, sizeof(DAMAGE));
6891 int clickIndexDL = (int)[damageListTV selectedRow];
6893 DAMAGE *dTop = UC[clickIndex].A->D;
6894 for(int k = 0;k < clickIndexDL;k++){
6895 UC[clickIndex].A->D = UC[clickIndex].A->D->next;
6898 if(clickIndexDL >= 0 && [damageListMA count] > 0){
6899 if(clickIndexDL == 0){
6900 UC[clickIndex].A->D = dTop;
6901 UC[clickIndex].A->D = UC[clickIndex].A->D->next;
6902 dTop = UC[clickIndex].A->D;
6903 }else if(clickIndexDL == [damageListMA count] - 1){
6904 UC[clickIndex].A->D = dTop;
6905 while(UC[clickIndex].A->D->next->next){
6906 UC[clickIndex].A->D = UC[clickIndex].A->D->next;
6908 UC[clickIndex].A->D->next = NULL;
6910 UC[clickIndex].A->D = dTop;
6911 for (int i = 0; i < clickIndexDL - 1;i++)
6912 UC[clickIndex].A->D = UC[clickIndex].A->D->next;
6913 UC[clickIndex].A->D->next = UC[clickIndex].A->D->next->next;
6916 UC[clickIndex].A->D = dTop;
6918 [self willChangeValueForKey:@"damageListMA"];
6919 [damageListMA removeObjectAtIndex:[damageListTV selectedRow]];
6920 [self didChangeValueForKey:@"damageListMA"];
6921 if([damageListMA count] > 0) [damageListAC setSelectionIndex:[damageListTV selectedRow]-1];
6923 UC[clickIndex].A = aTop;
6927 if([damageListTV selectedRow] >= 0){
6929 ATTACK *aTop = LC[cil].A;
6930 for(int k = 0;k < clickIndexAL;k++) {
6931 LC[cil].A = LC[cil].A->next;
6933 DAMAGE *dmgNext = NULL;
6934 dmgNext = calloc(1, sizeof(DAMAGE));
6936 int clickIndexDL = (int)[damageListTV selectedRow];
6938 DAMAGE *dTop = LC[cil].A->D;
6939 for(int k = 0;k < clickIndexDL;k++){
6940 LC[cil].A->D = LC[cil].A->D->next;
6943 if(clickIndexDL >= 0 && [damageListMA count] > 0){
6944 if(clickIndexDL == 0){
6945 LC[cil].A->D = dTop;
6946 LC[cil].A->D = LC[cil].A->D->next;
6947 dTop = LC[cil].A->D;
6948 }else if(clickIndexDL == [damageListMA count] - 1){
6949 LC[cil].A->D = dTop;
6950 while(LC[cil].A->D->next->next){
6951 LC[cil].A->D = LC[cil].A->D->next;
6953 LC[cil].A->D->next = NULL;
6955 LC[cil].A->D = dTop;
6956 for (int i = 0; i < clickIndexDL - 1;i++)
6957 LC[cil].A->D = LC[cil].A->D->next;
6958 LC[cil].A->D->next = LC[cil].A->D->next->next;
6961 LC[cil].A->D = dTop;
6963 [self willChangeValueForKey:@"damageListMA"];
6964 [damageListMA removeObjectAtIndex:[damageListTV selectedRow]];
6965 [self didChangeValueForKey:@"damageListMA"];
6966 if([damageListMA count] > 0) [damageListAC setSelectionIndex:[damageListTV selectedRow]-1];
6976 -(IBAction)insertHitList:(id)sender{
6978 if(!loadChipSideFlag){
6979 ATTACK *aTop = UC[clickIndex].A;
6980 for(int k = 0;k < clickIndexAL;k++) {
6981 UC[clickIndex].A = UC[clickIndex].A->next;
6984 DMGEXTEND *Etop = UC[clickIndex].A->E;
6986 UC[clickIndex].A->E = Etop;
6988 if(!UC[clickIndex].A->E) {[self AddDMGEXTEND:&UC[clickIndex].A->E :0];
6989 Etop = UC[clickIndex].A->E;
6992 for(int k = 0;k < (int)[hitListMA count]-1;k++) {
6993 UC[clickIndex].A->E = UC[clickIndex].A->E->next;
6997 if((int)[hitListMA count] > 0){
6998 UC[clickIndex].A->E->next = calloc(1, sizeof(DMGEXTEND));
6999 UC[clickIndex].A->E = UC[clickIndex].A->E->next;
7001 UC[clickIndex].A->E->next = NULL;
7002 UC[clickIndex].A->E->atkHit = [ALTFatkHit intValue];
7003 UC[clickIndex].A->E->hit = [ALTFhit intValue];
7004 UC[clickIndex].A->E->rate = [ALTFrate intValue];
7006 NSMutableDictionary* dict = [NSMutableDictionary new];
7007 [dict setValue:[NSString stringWithFormat:@"%d", [ALTFrate intValue]] forKey:@"rate"];
7008 [dict setValue:[NSString stringWithFormat:@"%d", [ALTFhit intValue]] forKey:@"hit"];
7009 [dict setValue:[NSString stringWithFormat:@"%d", [ALTFatkHit intValue]] forKey:@"atkHit"];
7011 [self willChangeValueForKey:@"hitListMA"];
7012 [hitListMA addObject:dict];
7013 [self didChangeValueForKey:@"hitListMA"];
7014 [hitListAC setSelectionIndex:[hitListTV selectedRow]];
7016 UC[clickIndex].A->E = Etop;
7018 UC[clickIndex].A = aTop;
7022 ATTACK *aTop = LC[cil].A;
7023 for(int k = 0;k < clickIndexAL;k++) {
7024 LC[cil].A = LC[cil].A->next;
7027 DMGEXTEND *Etop = LC[cil].A->E;
7029 LC[cil].A->E = Etop;
7031 if(!LC[cil].A->E) {[self AddDMGEXTEND:&LC[cil].A->E :0];
7032 Etop = LC[cil].A->E;
7035 for(int k = 0;k < (int)[hitListMA count]-1;k++) {
7036 LC[cil].A->E = LC[cil].A->E->next;
7040 if((int)[hitListMA count] > 0){
7041 LC[cil].A->E->next = calloc(1, sizeof(DMGEXTEND));
7042 LC[cil].A->E = LC[cil].A->E->next;
7044 LC[cil].A->E->next = NULL;
7045 LC[cil].A->E->atkHit = [ALTFatkHit intValue];
7046 LC[cil].A->E->hit = [ALTFhit intValue];
7047 LC[cil].A->E->rate = [ALTFrate intValue];
7049 NSMutableDictionary* dict = [NSMutableDictionary new];
7050 [dict setValue:[NSString stringWithFormat:@"%d", [ALTFrate intValue]] forKey:@"rate"];
7051 [dict setValue:[NSString stringWithFormat:@"%d", [ALTFhit intValue]] forKey:@"hit"];
7052 [dict setValue:[NSString stringWithFormat:@"%d", [ALTFatkHit intValue]] forKey:@"atkHit"];
7054 [self willChangeValueForKey:@"hitListMA"];
7055 [hitListMA addObject:dict];
7056 [self didChangeValueForKey:@"hitListMA"];
7057 [hitListAC setSelectionIndex:[hitListTV selectedRow]];
7059 LC[cil].A->E = Etop;
7069 -(IBAction)removeHitList:(id)sender{
7072 if(!loadChipSideFlag){
7073 if([hitListTV selectedRow] >= 0){
7074 ATTACK *aTop = UC[clickIndex].A;
7075 for(int k = 0;k < clickIndexAL;k++) {
7076 UC[clickIndex].A = UC[clickIndex].A->next;
7078 DMGEXTEND *Etop = UC[clickIndex].A->E;
7079 DMGEXTEND *eNext = NULL;
7082 int clickIndexHL = (int)[hitListTV selectedRow];
7084 for(int k = 0;k < clickIndexHL-1;k++){
7085 UC[clickIndex].A->E = UC[clickIndex].A->E->next;
7088 if(clickIndexHL == 0) {
7090 UC[clickIndex].A->E = UC[clickIndex].A->E->next;
7091 Etop = UC[clickIndex].A->E;
7096 eNext = UC[clickIndex].A->E->next->next;
7098 UC[clickIndex].A->E->next = eNext;
7101 UC[clickIndex].A->E = Etop;
7103 [self willChangeValueForKey:@"hitListMA"];
7104 [hitListMA removeObjectAtIndex:[hitListTV selectedRow]];
7105 [self didChangeValueForKey:@"hitListMA"];
7106 if([hitListMA count] > 0) [hitListAC setSelectionIndex:[hitListTV selectedRow]-1];
7108 UC[clickIndex].A = aTop;
7113 if([hitListTV selectedRow] >= 0){
7114 ATTACK *aTop = LC[cil].A;
7115 for(int k = 0;k < clickIndexAL;k++) {
7116 LC[cil].A = LC[cil].A->next;
7118 DMGEXTEND *Etop = LC[cil].A->E;
7119 DMGEXTEND *eNext = NULL;
7122 int clickIndexHL = (int)[hitListTV selectedRow];
7124 for(int k = 0;k < clickIndexHL-1;k++){
7125 LC[cil].A->E = LC[cil].A->E->next;
7128 if(clickIndexHL == 0) {
7130 LC[cil].A->E = LC[cil].A->E->next;
7131 Etop = LC[cil].A->E;
7136 eNext = LC[cil].A->E->next->next;
7138 LC[cil].A->E->next = eNext;
7141 LC[cil].A->E = Etop;
7143 [self willChangeValueForKey:@"hitListMA"];
7144 [hitListMA removeObjectAtIndex:[hitListTV selectedRow]];
7145 [self didChangeValueForKey:@"hitListMA"];
7146 if([hitListMA count] > 0) [hitListAC setSelectionIndex:[hitListTV selectedRow]-1];
7155 -(IBAction)skillListInsert:(id)sender{
7156 SLpbtn = (int)[PUBsl indexOfSelectedItem];
7158 if(SLpbtn <= 0) return;
7160 NSMutableDictionary *dict = [NSMutableDictionary new];
7161 [dict setValue:[NSString stringWithFormat:@"新規スキル"] forKey:@"name"];
7163 Stop = UC[clickIndex].S;
7166 if([skillListMA count] == 0){
7167 UC[clickIndex].S = (SKILL*)malloc(sizeof(SKILL));
7169 UC[clickIndex].S->type = SLpbtn;
7171 UC[clickIndex].S->next = NULL;
7172 Stop = UC[clickIndex].S;
7174 while(UC[clickIndex].S->next) UC[clickIndex].S = UC[clickIndex].S->next;
7175 UC[clickIndex].S->next = (SKILL*)malloc(sizeof(SKILL));
7176 UC[clickIndex].S = UC[clickIndex].S->next;
7178 UC[clickIndex].S->type = SLpbtn;
7180 UC[clickIndex].S->next = NULL;
7181 UC[clickIndex].S = Stop;
7185 for(int i = 1;i < SLpbtn;i++){
7188 [dict setValue:[NSString stringWithFormat:@"%@", SKL->name] forKey:@"name"];
7190 [self willChangeValueForKey:@"skillListMA"];
7191 [skillListMA insertObject:dict atIndex:[skillListMA count]];
7192 [self didChangeValueForKey:@"skillListMA"];
7193 [skillListAC setSelectionIndex:999];
7196 UC[clickIndex].S = Stop;
7197 if([skillListMA count] == 0){
7198 UC[clickIndex].S = (SKILL*)malloc(sizeof(SKILL));
7200 UC[clickIndex].S->type = SLpbtn;
7202 UC[clickIndex].S->next = NULL;
7203 Stop = UC[clickIndex].S;
7204 }else if(SKLrow > 0){
7205 for (int i = 0; i < SKLrow-1;i++)
7206 UC[clickIndex].S = UC[clickIndex].S->next;
7208 SKILL *tmp = (SKILL*)malloc(sizeof(SKILL));
7209 *tmp = *UC[clickIndex].S->next;
7210 UC[clickIndex].S->next = (SKILL*)malloc(sizeof(SKILL));
7211 UC[clickIndex].S->next->next = tmp;
7212 UC[clickIndex].S = UC[clickIndex].S->next;
7214 UC[clickIndex].S->type = SLpbtn;
7216 UC[clickIndex].S = Stop;
7218 SKILL *tmp = (SKILL*)malloc(sizeof(SKILL));
7219 tmp->next = UC[clickIndex].S;
7221 UC[clickIndex].S->type = SLpbtn;
7224 UC[clickIndex].S = Stop;
7227 for(int i = 1;i < SLpbtn;i++){
7230 [dict setValue:[NSString stringWithFormat:@"%@", SKL->name] forKey:@"name"];
7232 [self willChangeValueForKey:@"skillListMA"];
7233 [skillListMA insertObject:dict atIndex:SKLrow];
7234 [self didChangeValueForKey:@"skillListMA"];
7235 [skillListAC setSelectionIndex:SKLrow];
7238 -(IBAction)skillListDelete:(id)sender{
7239 Stop = UC[clickIndex].S;
7242 SKLrow = (int)[skillListMA count] - 1;
7245 if([skillListMA count] > 0){
7248 UC[clickIndex].S = Stop;
7249 UC[clickIndex].S = UC[clickIndex].S->next;
7250 Stop = UC[clickIndex].S;
7251 }else if(SKLrow == [skillListMA count] - 1){
7252 UC[clickIndex].S = Stop;
7253 while(UC[clickIndex].S->next->next){
7254 UC[clickIndex].S = UC[clickIndex].S->next;
7256 UC[clickIndex].S->next = NULL;
7258 UC[clickIndex].S = Stop;
7259 for (int i = 0; i < SKLrow - 1;i++)
7260 UC[clickIndex].S = UC[clickIndex].S->next;
7261 UC[clickIndex].S->next = UC[clickIndex].S->next->next;
7264 [self willChangeValueForKey:@"skillListMA"];
7265 [skillListMA removeObjectAtIndex:SKLrow];
7266 [self didChangeValueForKey:@"skillListMA"];
7267 [skillListAC setSelectionIndex:SKLrow-1];
7268 if(SKLrow < 0) [skillListAC setSelectionIndex:[skillListMA count]-1];
7269 if(SKLrow == 0) [skillListAC setSelectionIndex:0];
7270 if(SKLrow > 0) SKLrow--;
7272 UC[clickIndex].S = Stop;
7276 -(IBAction)SLbuildAdd:(id)sender{
7277 NSMutableDictionary *dict = [NSMutableDictionary new];
7278 NSMutableArray *Array = [NSMutableArray array];
7280 for(int i = 0;i<BuildChipNum;i++){
7281 [Array addObject:[BC[i].name retain]];
7283 [dict setValue:Array forKey:@"name"];
7284 [dict setValue:0xc7 forKey:@"sel"];
7285 [dict setValue:[NSString stringWithFormat:@"資%d食%d金%d", BC[0].Csupply, BC[0].Cfood, BC[0].Cmoney] forKey:@"manko"];
7286 Stop = UC[clickIndex].S;
7288 if(SKLrow <= 0) SKLrow = 0;
7290 for(int i = 0;i < SKLrow;i++){
7291 UC[clickIndex].S = UC[clickIndex].S->next;
7295 if([skillListBuildMA count] == 0){
7296 UC[clickIndex].S->list[0] = 1;
7299 for(int i = 0;UC[clickIndex].S->list[i] > 0;i++){
7302 UC[clickIndex].S->list[k] = 1;
7305 [self willChangeValueForKey:@"skillListBuildMA"];
7306 [skillListBuildMA addObject:dict];
7307 [self didChangeValueForKey:@"skillListBuildMA"];
7308 [skillListBuildAC setSelectionIndex:[skillListBuildMA count]-1];
7309 SKLBrow = (int)[skillListBuildMA count]-1;
7311 UC[clickIndex].S = Stop;
7315 -(IBAction)SLbuildDelete:(id)sender{
7318 UC[clickIndex].S = Stop;
7328 erase(UC[clickIndex].S->list[0]+SKLBrow, UC[clickIndex].S->list[254]);
7330 [self willChangeValueForKey:@"skillListBuildMA"];
7331 [skillListBuildMA removeObjectAtIndex:SKLBrow];
7332 [self didChangeValueForKey:@"skillListBuildMA"];
7333 [skillListBuildAC setSelectionIndex:SKLBrow-1];
7334 if(SKLBrow < 0) [skillListAC setSelectionIndex:[skillListBuildMA count]-1];
7335 if(SKLBrow == 0) [skillListAC setSelectionIndex:0];
7336 if(SKLBrow > 0) SKLBrow--;
7338 UC[clickIndex].S = Stop;
7342 void erase(int *ptr, int *last)
7344 while ( ++ptr < last )
7345 *(ptr - 1) = *ptr; // 要素をひとつ前にずらす
7349 int v[] = {3, 1, 4, 1, 5};
7350 erase(v[0]+2, v[4]); // [2] の要素を削除。最後の 5 はそのまま
7356 -(IBAction)SLbuildSubmit:(id)sender{
7357 [self willChangeValueForKey:@"skillListBuildMA"];
7358 [skillListBuildMA removeAllObjects];
7359 [self didChangeValueForKey:@"skillListBuildMA"];
7366 for(int i = 0;i< 255;i++){
7367 UC[clickIndex].S->list[i] = 0;
7368 UC[clickIndex].S->cost[i] = 0;
7375 -(IBAction)SLunitAdd:(id)sender{
7376 NSMutableDictionary *dict = [NSMutableDictionary new];
7377 NSMutableArray *Array = [NSMutableArray array];
7379 for(int i = 0;i<UCN;i++){
7380 [Array addObject:[UC[i].nameRecognition retain]];
7382 [dict setValue:Array forKey:@"name"];
7383 [dict setValue:0xc7 forKey:@"sel"];
7384 [dict setValue:[NSString stringWithFormat:@"%d", 0] forKey:@"MP"];
7385 Stop = UC[clickIndex].S;
7387 if(SKLrow <= 0) SKLrow = 0;
7389 for(int i = 0;i < SKLrow;i++){
7390 UC[clickIndex].S = UC[clickIndex].S->next;
7394 if([skillListUnitMA count] == 0){
7395 UC[clickIndex].S->list[0] = 2;
7398 for(int i = 0;UC[clickIndex].S->list[i] > 0;i++){
7401 UC[clickIndex].S->list[k] = 2;
7404 [self willChangeValueForKey:@"skillListUnitMA"];
7405 [skillListUnitMA addObject:dict];
7406 [self didChangeValueForKey:@"skillListUnitMA"];
7407 [skillListUnitAC setSelectionIndex:[skillListUnitMA count]-1];
7408 SKLBrow = (int)[skillListUnitMA count]-1;
7409 }UC[clickIndex].S = Stop;
7414 -(IBAction)SLunitDelete:(id)sender{
7415 Stop = UC[clickIndex].S;
7417 if(SKLrow <= 0) SKLrow = 0;
7419 for(int i = 0;i < SKLrow;i++){
7420 UC[clickIndex].S = UC[clickIndex].S->next;
7423 if([skillListBuildMA count] > 0){
7426 UC[clickIndex].S = Stop;
7427 for(int i = 0;UC[clickIndex].S->list[i] == 0;i++){
7430 UC[clickIndex].S->list[k-1] = 0;
7433 [self willChangeValueForKey:@"skillListUnitMA"];
7434 [skillListUnitMA removeObjectAtIndex:k];
7435 [self didChangeValueForKey:@"skillListUnitMA"];
7436 [skillListUnitAC setSelectionIndex:SKLUrow-1];
7439 UC[clickIndex].S = Stop;
7441 -(IBAction)SLunitSubmit:(id)sender{
7442 [self willChangeValueForKey:@"skillListUnitMA"];
7443 [skillListUnitMA removeAllObjects];
7444 [self didChangeValueForKey:@"skillListUnitMA"];
7449 -(IBAction)registUCL:(id)sender{
7450 [TFchipNumb setIntValue:(int)chipNumb];
7451 UCN = (int)chipNumb;
7452 UnitChipMax = (int)chipNumb/25+1;
7453 [UCLRegisterPanel makeKeyAndOrderFront:nil];
7456 -(void)savePresetUnitNumber{
7457 NSString *directoryPath;
7459 directoryPath = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
7460 [[NSFileManager defaultManager] changeCurrentDirectoryPath:directoryPath];
7462 NSString *path = @"data/UnitChip/preset.txt";
7464 NSString *data = [NSString stringWithFormat:@"%d", (int)chipNumb];
7466 [data writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:nil];
7470 -(void)savePresetItemNumber{
7471 NSString *directoryPath;
7473 directoryPath = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
7474 [[NSFileManager defaultManager] changeCurrentDirectoryPath:directoryPath];
7476 NSString *path = @"data/ItemList/preset.txt";
7478 NSString *data = [NSString stringWithFormat:@"%d", (int)eItemNum];
7480 [data writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:nil];
7484 -(IBAction)registSaveUCL:(id)sender{
7485 chipNumb = [TFchipNumb intValue];
7486 [self savePresetUnitNumber];
7487 UCN = (int)chipNumb;
7488 UnitChipMax = (int)chipNumb/25+1;
7489 [self initUnitChipList];
7492 [UCLRegisterPanel close];
7494 -(IBAction)registCancelUCL:(id)sender{
7495 [UCLRegisterPanel close];
7498 -(void)initAttackSet{
7500 [AMbtnA removeAllItems];
7501 [AMbtnB removeAllItems];
7502 [AMbtnC removeAllItems];
7503 [AMbtnD removeAllItems];
7505 [self willChangeValueForKey:@"commandListMA"];
7506 [commandListMA removeAllObjects];
7507 [self didChangeValueForKey:@"commandListMA"];
7508 [self willChangeValueForKey:@"comboListMA"];
7509 [comboListMA removeAllObjects];
7510 [self didChangeValueForKey:@"comboListMA"];
7513 [AMbtnA addItemWithTitle:@"なし"];
7514 [AMbtnB addItemWithTitle:@"なし"];
7515 [AMbtnC addItemWithTitle:@"なし"];
7516 [AMbtnD addItemWithTitle:@"なし"];
7518 ATTACK *Atop = UC[clickIndex].A;
7519 while (UC[clickIndex].A != NULL) {
7520 if(UC[clickIndex].A->name != NULL){
7521 [AMbtnA addItemWithTitle:UC[clickIndex].A->name];
7522 [AMbtnB addItemWithTitle:UC[clickIndex].A->name];
7523 [AMbtnC addItemWithTitle:UC[clickIndex].A->name];
7524 [AMbtnD addItemWithTitle:UC[clickIndex].A->name];
7526 UC[clickIndex].A = UC[clickIndex].A->next;
7528 UC[clickIndex].A = Atop;
7531 for(int i = 0;UC[clickIndex].A;i++){
7533 if(UC[clickIndex].A->cmd && ![UC[clickIndex].A->cmd isEqualToString:@"(null)"] && ![UC[clickIndex].A->cmd isEqualToString:@""]){
7534 NSMutableDictionary *dict = [NSMutableDictionary new];
7536 [dict setValue:UC[clickIndex].A->cmd forKey:@"name"];
7537 [dict setValue:[NSString stringWithFormat:@"%d", UC[clickIndex].A->hasei] forKey:@"hasei"];
7539 NSMutableArray *Array = [NSMutableArray array];
7541 while (AA != NULL) {
7542 [Array addObject:AA->name];
7545 [dict setValue:Array forKey:@"waza"];
7546 [dict setValue:[NSString stringWithFormat:@"%d", i] forKey:@"wazaSet"];
7549 [self willChangeValueForKey:@"commandListMA"];
7550 [commandListMA addObject:dict];
7551 [self didChangeValueForKey:@"commandListMA"];
7557 UC[clickIndex].A = UC[clickIndex].A->next;
7559 UC[clickIndex].A = Atop;
7562 COMBO *Ctop = UC[clickIndex].CM.co;
7563 while (UC[clickIndex].CM.co != NULL) {
7564 NSMutableDictionary* dict = [NSMutableDictionary new];
7565 [dict setValue:[NSString stringWithFormat:@"%@", UC[clickIndex].CM.co->mbo] forKey:@"name"];
7566 [self willChangeValueForKey:@"comboListMA"];
7567 [comboListMA addObject:dict];
7568 [self didChangeValueForKey:@"comboListMA"];
7569 UC[clickIndex].CM.co = UC[clickIndex].CM.co->next;
7571 UC[clickIndex].CM.co = Ctop;
7574 [AMbtnA selectItemAtIndex:UC[clickIndex].CM.A+1];
7575 [AMbtnB selectItemAtIndex:UC[clickIndex].CM.B+1];
7576 [AMbtnC selectItemAtIndex:UC[clickIndex].CM.C+1];
7577 [AMbtnD selectItemAtIndex:UC[clickIndex].CM.D+1];
7583 UC[clickIndex].A = Atop;
7586 -(void)initAttackSet2{
7588 [AMbtnA removeAllItems];
7589 [AMbtnB removeAllItems];
7590 [AMbtnC removeAllItems];
7591 [AMbtnD removeAllItems];
7593 [self willChangeValueForKey:@"commandListMA"];
7594 [commandListMA removeAllObjects];
7595 [self didChangeValueForKey:@"commandListMA"];
7596 [self willChangeValueForKey:@"comboListMA"];
7597 [comboListMA removeAllObjects];
7598 [self didChangeValueForKey:@"comboListMA"];
7603 -(IBAction)attackListTotalSubmit:(id)sender{
7605 UC[clickIndex].CM.A = (int)[AMbtnA indexOfSelectedItem]-1;
7606 UC[clickIndex].CM.B = (int)[AMbtnB indexOfSelectedItem]-1;
7607 UC[clickIndex].CM.C = (int)[AMbtnC indexOfSelectedItem]-1;
7608 UC[clickIndex].CM.D = (int)[AMbtnD indexOfSelectedItem]-1;
7610 ATTACK *aTop2 = UC[clickIndex].A;
7611 while (UC[clickIndex].A) {
7612 UC[clickIndex].A->cmd = NULL;
7613 UC[clickIndex].A->hasei = false;
7614 UC[clickIndex].A = UC[clickIndex].A->next;
7616 UC[clickIndex].A = aTop2;
7618 for(int i = 0;i < [commandListMA count];i++){
7620 ATTACK *aTop = UC[clickIndex].A;
7621 for(int k = 0;k < [[commandListMA[i] valueForKeyPath:@"wazaSet"] intValue];k++)
7622 UC[clickIndex].A = UC[clickIndex].A->next;
7623 UC[clickIndex].A->cmd = [[commandListMA[i] valueForKeyPath:@"name"] retain];
7624 UC[clickIndex].A->hasei = [[commandListMA[i] valueForKeyPath:@"hasei"] intValue];
7626 UC[clickIndex].A = aTop;
7629 COMBO *cTop = UC[clickIndex].CM.co;
7630 for(int i = 0;i < [comboListMA count];i++){
7632 UC[clickIndex].CM.co =calloc(1, sizeof(COMBO));
7633 cTop = UC[clickIndex].CM.co;
7635 UC[clickIndex].CM.co->mbo = [[comboListMA[i] valueForKeyPath:@"name"] retain];
7637 if(i+1 < [comboListMA count]){
7638 UC[clickIndex].CM.co->next =calloc(1, sizeof(COMBO));
7640 UC[clickIndex].CM.co = UC[clickIndex].CM.co->next;
7641 }UC[clickIndex].CM.co = cTop;
7647 [UCLPanelAttackList close];
7650 -(IBAction)attackListOpenBtn:(id)sender{
7652 if(!loadChipSideFlag){
7653 [self initAttackList];
7655 [self initAttackList2];
7658 windowPoint.x = [UCLDetailPanel frame].origin.x;
7659 windowPoint.y = [UCLDetailPanel frame].origin.y + 50;
7660 [UCLPanelAttack setFrameOrigin:windowPoint];
7662 [UCLPanelAttack makeKeyAndOrderFront:nil];
7664 -(IBAction)commandListAdd:(id)sender{
7667 NSMutableDictionary *dict = [NSMutableDictionary new];
7669 NSMutableArray *Array = [NSMutableArray array];
7670 ATTACK *AA = UC[clickIndex].A;
7671 while (AA != NULL) {
7672 [Array addObject:AA->name];
7675 [dict setValue:Array forKey:@"waza"];
7677 if([commandListMA count] == 0){
7679 [self willChangeValueForKey:@"commandListMA"];
7680 [commandListMA insertObject:dict atIndex:[commandListMA count]];
7681 [self didChangeValueForKey:@"commandListMA"];
7682 [commandListAC setSelectionIndex:999];
7683 }else if(CMDrow == -1){
7685 [self willChangeValueForKey:@"commandListMA"];
7686 [commandListMA insertObject:dict atIndex:[commandListMA count]];
7687 [self didChangeValueForKey:@"commandListMA"];
7688 [commandListAC setSelectionIndex:999];
7690 }else if(CMDrow > 0){
7692 [self willChangeValueForKey:@"commandListMA"];
7693 [commandListMA insertObject:dict atIndex:CMDrow];
7694 [self didChangeValueForKey:@"commandListMA"];
7695 [commandListAC setSelectionIndex:999];
7699 [self willChangeValueForKey:@"commandListMA"];
7700 [commandListMA insertObject:dict atIndex:commandListMA];
7701 [self didChangeValueForKey:@"commandListMA"];
7702 [commandListAC setSelectionIndex:999];
7720 -(IBAction)commandListRemove:(id)sender{
7723 if([commandListMA count] == 0){
7725 }else if(CMDrow == -1){
7727 [self willChangeValueForKey:@"commandListMA"];
7728 [commandListMA removeObjectAtIndex:[commandListMA count]-1];
7729 [self didChangeValueForKey:@"commandListMA"];
7730 [commandListAC setSelectionIndex:999];
7732 }else if(CMDrow > 0){
7734 [self willChangeValueForKey:@"commandListMA"];
7735 [commandListMA removeObjectAtIndex:CMDrow];
7736 [self didChangeValueForKey:@"commandListMA"];
7737 [commandListAC setSelectionIndex:999];
7742 [self willChangeValueForKey:@"commandListMA"];
7743 [commandListMA removeObjectAtIndex:CMDrow];
7744 [self didChangeValueForKey:@"commandListMA"];
7745 [commandListAC setSelectionIndex:999];
7760 -(IBAction)comboListAdd:(id)sender{
7762 NSMutableDictionary *dict = [NSMutableDictionary new];
7764 if([comboListMA count] == 0){
7766 [self willChangeValueForKey:@"comboListMA"];
7767 [comboListMA insertObject:dict atIndex:[comboListMA count]];
7768 [self didChangeValueForKey:@"comboListMA"];
7769 [comboListAC setSelectionIndex:999];
7770 }else if(CMBrow == -1){
7772 [self willChangeValueForKey:@"comboListMA"];
7773 [comboListMA insertObject:dict atIndex:[comboListMA count]];
7774 [self didChangeValueForKey:@"comboListMA"];
7775 [comboListAC setSelectionIndex:999];
7777 }else if(CMBrow > 0){
7779 [self willChangeValueForKey:@"comboListMA"];
7780 [comboListMA insertObject:dict atIndex:CMDrow];
7781 [self didChangeValueForKey:@"comboListMA"];
7782 [comboListAC setSelectionIndex:999];
7786 [self willChangeValueForKey:@"comboListMA"];
7787 [comboListMA insertObject:dict atIndex:comboListMA];
7788 [self didChangeValueForKey:@"comboListMA"];
7789 [comboListAC setSelectionIndex:999];
7800 -(IBAction)comboListRemove:(id)sender{
7803 if([comboListMA count] == 0){
7805 }else if(CMBrow == -1){
7807 [self willChangeValueForKey:@"comboListMA"];
7808 [comboListMA removeObjectAtIndex:[comboListMA count]-1];
7809 [self didChangeValueForKey:@"comboListMA"];
7810 [comboListAC setSelectionIndex:999];
7812 }else if(CMBrow > 0){
7814 [self willChangeValueForKey:@"comboListMA"];
7815 [comboListMA removeObjectAtIndex:CMBrow];
7816 [self didChangeValueForKey:@"comboListMA"];
7817 [comboListAC setSelectionIndex:999];
7822 [self willChangeValueForKey:@"comboListMA"];
7823 [comboListMA removeObjectAtIndex:CMBrow];
7824 [self didChangeValueForKey:@"comboListMA"];
7825 [comboListAC setSelectionIndex:999];
7838 -(IBAction)addSubjMark:(id)sender{
7839 NSString* str = [[ALTFmsg stringValue] retain];
7840 str = [[str stringByAppendingFormat:@"$subj"] retain];
7841 [ALTFmsg setStringValue:str];
7843 -(IBAction)addObjeMark:(id)sender{
7844 NSString* str = [[ALTFmsg stringValue] retain];
7845 str = [[str stringByAppendingFormat:@"$obje"] retain];
7846 [ALTFmsg setStringValue:str];
7850 -(IBAction)ILregi:(id)sender{
7852 [ILregiTF setIntValue:(int)eItemNum];
7853 [ILregiWIndow makeKeyAndOrderFront:nil];
7856 -(IBAction)saveILregi:(id)sender{
7858 eItemNum = [ILregiTF intValue];
7859 [self initItemList];
7860 [self savePresetItemNumber];
7862 [ILregiWIndow close];
7866 -(IBAction)cancelILregi:(id)sender{
7868 [ILregiWIndow close];
7871 -(IBAction)attackIL:(id)sender{
7874 [self initAttackListEQ];
7875 [UCLPanelAttack makeKeyAndOrderFront:nil];
7880 -(IBAction)attackPreferenceBtn:(id)sender{
7882 [ATPreferenceWindow makeKeyAndOrderFront:nil];
7896 -(IBAction)attackEffectBtn:(id)sender{
7901 A = EQ[clickIndexEQ].A;
7903 if(!loadChipSideFlag){
7904 A = UC[clickIndex].A;
7913 if(clickIndexAL <= -1) return;
7915 for(int i = 0;i < clickIndexAL;i++){
7919 if(![A->AN.movName isEqualToString:@""] && ![A->AN.movName isEqualToString:@"(null)"] && A->AN.movName != NULL){
7922 [ATmovFileNameTF setStringValue:A->AN.movName];
7927 [ATmovFileNameTF setStringValue:@""];
7935 [self willChangeValueForKey:@"animationListMA"];
7936 [animationListMA removeAllObjects];
7937 [self didChangeValueForKey:@"animationListMA"];
7942 if(clickIndexAL <= -1) return;
7944 for(int i = 0;i < clickIndexAL;i++){
7953 NSMutableDictionary *dict = [NSMutableDictionary new];
7955 [dict setValue:[NSString stringWithFormat:@"%@", ani->name] forKey:@"name"];
7956 [dict setValue:[NSString stringWithFormat:@"%@", ani->names] forKey:@"snd"];
7957 [dict setValue:ani->img forKey:@"img"];
7959 [self willChangeValueForKey:@"animationListMA"];
7960 [animationListMA addObject:dict];
7961 [self didChangeValueForKey:@"animationListMA"];
7977 EQ[clickIndexEQ].A = atkTop;
7979 if(!loadChipSideFlag){
7980 UC[clickIndex].A = atkTop;
7986 [ATEffectWindow makeKeyAndOrderFront:nil];
7990 -(IBAction)attackEffectPreviewBtn:(id)sender{
8000 A = EQ[clickIndexEQ].A;
8002 if(!loadChipSideFlag){
8003 A = UC[clickIndex].A;
8010 if(ATmovBC.state == YES){
8014 if(clickIndexAL <= -1) return;
8016 for(int i = 0;i < clickIndexAL;i++){
8020 A->AN.movName = [[ATmovFileNameTF stringValue] retain];
8022 if([A->AN.movName isEqualToString:@""]) return;
8025 [[NSFileManager defaultManager] changeCurrentDirectoryPath:[[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent]];
8028 NSString *path = @"data/AttackList3/IALdata";
8030 path = [path stringByAppendingFormat:@"%ldE", clickIndexEQ+1];
8032 path = [path stringByAppendingFormat:@"/"];
8034 path = [path stringByAppendingString:A->AN.movName];
8036 AVpreview2 = [AVPlayer playerWithURL:[NSURL fileURLWithPath:path]];
8039 }else if(!loadChipSideFlag){
8040 NSString *path = @"data/AttackList/ALdata";
8042 path = [path stringByAppendingFormat:@"%ldE", clickIndex+1];
8044 path = [path stringByAppendingFormat:@"/"];
8046 path = [path stringByAppendingString:A->AN.movName];
8048 AVpreview2 = [AVPlayer playerWithURL:[NSURL fileURLWithPath:path]];
8050 NSString *path = @"data/AttackList/ALdata2";
8052 path = [path stringByAppendingFormat:@"%ldE", clickIndex+1];
8054 path = [path stringByAppendingFormat:@"/"];
8056 path = [path stringByAppendingString:A->AN.movName];
8058 AVpreview2 = [AVPlayer playerWithURL:[NSURL fileURLWithPath:path]];
8061 AVPV2.player = [AVpreview2 retain];
8071 [ATEffectMovWindow makeKeyAndOrderFront:nil];
8072 }else if(ATaniBC.state == YES){
8076 [ATframeCntTF setStringValue:[NSString stringWithFormat:@"%d/%d", frameNum, frameMax]];
8079 [ATframeTF setStringValue:[NSString stringWithFormat:@"%d", A->AN.frame]];
8080 if(A->AN.frame <= 0)
8081 [ATframeTF setStringValue:[NSString stringWithFormat:@"1"]];
8086 for (int i = 0; i < frameMax;i++) {
8088 if(![ani->names isEqualToString:@""] && ![ani->names isEqualToString:@"(null)"] && ani->names != NULL){
8090 [[NSFileManager defaultManager] changeCurrentDirectoryPath:[[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent]];
8094 NSString *path = @"data/AttackList3/IALdata";
8096 path = [path stringByAppendingFormat:@"%ldE", clickIndexEQ+1];
8098 path = [path stringByAppendingFormat:@"/"];
8100 path = [path stringByAppendingString:ani->names];
8102 ani->snd = [[[NSSound alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] byReference:NO] retain];
8105 }else if(!loadChipSideFlag){
8106 NSString *path = @"data/AttackList/ALdata";
8108 path = [path stringByAppendingFormat:@"%ldE", clickIndex+1];
8110 path = [path stringByAppendingFormat:@"/"];
8112 path = [path stringByAppendingString:ani->names];
8114 ani->snd = [[[NSSound alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] byReference:NO] retain];
8116 NSString *path = @"data/AttackList/ALdata2";
8118 path = [path stringByAppendingFormat:@"%ldE", clickIndex+1];
8120 path = [path stringByAppendingFormat:@"/"];
8122 path = [path stringByAppendingString:ani->names];
8124 ani->snd = [[[NSSound alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] byReference:NO] retain];
8137 EQ[clickIndexEQ].A = atkTop;
8139 if(!loadChipSideFlag){
8140 UC[clickIndex].A = atkTop;
8145 [ATEffectAniWindow makeKeyAndOrderFront:nil];
8146 attackEffectPreviewBtnFlag = true;
8147 [UCLtime invalidate];
8151 -(IBAction)attackPreferenceCloseBtn:(id)sender{
8153 [ATPreferenceWindow close];
8159 -(IBAction)attackEffectCloseBtn:(id)sender{
8166 A = EQ[clickIndexEQ].A;
8168 if(!loadChipSideFlag){
8169 A = UC[clickIndex].A;
8171 A = LC[clickIndex].A;
8176 if(clickIndexAL <= -1) return;
8178 for(int i = 0;i < clickIndexAL;i++){
8182 A->AN.movName = [[ATmovFileNameTF stringValue] retain];
8193 for (int i = 0; i < frameMax;i++) {
8195 if(![ani->names isEqualToString:@""] && ![ani->names isEqualToString:@"(null)"] && ani->names != NULL){
8197 [[NSFileManager defaultManager] changeCurrentDirectoryPath:[[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent]];
8199 NSString *path = @"data/AttackList3/IALdata";
8201 path = [path stringByAppendingFormat:@"%ldE", clickIndexEQ+1];
8203 path = [path stringByAppendingFormat:@"/"];
8205 path = [path stringByAppendingString:ani->names];
8207 ani->snd = [[[NSSound alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] byReference:NO] retain];
8209 }else if(!loadChipSideFlag){
8210 NSString *path = @"data/AttackList/ALdata";
8212 path = [path stringByAppendingFormat:@"%ldE", clickIndex+1];
8214 path = [path stringByAppendingFormat:@"/"];
8216 path = [path stringByAppendingString:ani->names];
8218 ani->snd = [[[NSSound alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] byReference:NO] retain];
8220 NSString *path = @"data/AttackList/ALdata2";
8222 path = [path stringByAppendingFormat:@"%ldE", clickIndex+1];
8224 path = [path stringByAppendingFormat:@"/"];
8226 path = [path stringByAppendingString:ani->names];
8228 ani->snd = [[[NSSound alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] byReference:NO] retain];
8243 EQ[clickIndexEQ].A = atkTop;
8245 if(!loadChipSideFlag){
8246 UC[clickIndex].A = atkTop;
8248 LC[clickIndex].A = atkTop;
8251 [ATEffectWindow close];
8256 -(IBAction)attackEffectMovCloseBtn:(id)sender{
8261 A = EQ[clickIndexEQ].A;
8263 if(!loadChipSideFlag){
8264 A = UC[clickIndex].A;
8271 for(int i = 0;i < clickIndexAL;i++){
8277 for (int i = 0; i < frameMax;i++) {
8280 ani->snd.loops = NO;
8291 EQ[clickIndexEQ].A = atkTop;
8293 if(!loadChipSideFlag){
8294 UC[clickIndex].A = atkTop;
8302 [ATEffectMovWindow close];
8306 -(IBAction)attackEffectAniCloseBtn:(id)sender{
8308 frameRunFlag = false;
8310 scheduledTimerWithTimeInterval:1.0/30
8312 selector:@selector(EventLoopUCL:)
8316 [ATEffectAniWindow close];
8320 -(IBAction)attackEffectInsert:(id)sender{
8325 A = EQ[clickIndexEQ].A;
8327 if(!loadChipSideFlag){
8328 A = UC[clickIndex].A;
8336 if(clickIndexAL <= -1) return;
8338 for(int i = 0;i < clickIndexAL;i++){
8347 NSMutableDictionary *dict = [NSMutableDictionary new];
8348 if([animationListMA count] == 0){
8350 aniTop = calloc(1, sizeof(ANI));
8353 ani->name = [@"新規ファイル名" retain];
8355 [dict setValue:[NSString stringWithFormat:@"%@", ani->name] forKey:@"name"];
8357 [self willChangeValueForKey:@"animationListMA"];
8358 [animationListMA insertObject:dict atIndex:[animationListMA count]];
8359 [self didChangeValueForKey:@"animationListMA"];
8360 [animationListAC setSelectionIndex:999];
8361 }else if(ANLrow == -1){
8365 ani->next = calloc(1, sizeof(ANI));
8368 ani->name = [@"新規ファイル名" retain];
8370 [dict setValue:[NSString stringWithFormat:@"%@", ani->name] forKey:@"name"];
8373 [self willChangeValueForKey:@"animationListMA"];
8374 [animationListMA insertObject:dict atIndex:[animationListMA count]];
8375 [self didChangeValueForKey:@"animationListMA"];
8376 [animationListAC setSelectionIndex:999];
8378 }else if(ANLrow > 0){
8379 for (int i = 0; i < ANLrow-1; i++) {
8383 ANI *tmp = (ANI*)malloc(sizeof(ANI));
8385 ani->next = (ANI*)malloc(sizeof(ANI));
8386 ani->next->next = tmp;
8389 ani->name = [@"新規ファイル名" retain];
8391 [dict setValue:[NSString stringWithFormat:@"%@", ani->name] forKey:@"name"];
8394 [self willChangeValueForKey:@"animationListMA"];
8395 [animationListMA insertObject:dict atIndex:ANLrow];
8396 [self didChangeValueForKey:@"animationListMA"];
8397 [animationListAC setSelectionIndex:999];
8404 ani->next = calloc(1, sizeof(ANI));
8405 ani->name = [@"新規ファイル名" retain];
8412 [dict setValue:[NSString stringWithFormat:@"%@", ani->name] forKey:@"name"];
8413 [self willChangeValueForKey:@"animationListMA"];
8414 [animationListMA insertObject:dict atIndex:ANLrow];
8415 [self didChangeValueForKey:@"animationListMA"];
8416 [animationListAC setSelectionIndex:999];
8428 EQ[clickIndexEQ].A = atkTop;
8430 if(!loadChipSideFlag){
8431 UC[clickIndex].A = atkTop;
8438 -(IBAction)attackEffectDelete:(id)sender{
8443 A = EQ[clickIndexEQ].A;
8445 if(!loadChipSideFlag){
8446 A = UC[clickIndex].A;
8454 if(clickIndexAL <= -1) return;
8456 for(int i = 0;i < clickIndexAL;i++){
8465 if([animationListMA count] == 0){
8467 }else if(ANLrow == -1){
8468 for(int i = 0;i < [animationListMA count]-1;i++){
8471 if([animationListMA count] > 1) ani->next = NULL;
8473 [self willChangeValueForKey:@"animationListMA"];
8474 [animationListMA removeObjectAtIndex:[animationListMA count]-1];
8475 [self didChangeValueForKey:@"animationListMA"];
8476 [animationListAC setSelectionIndex:999];
8478 }else if(ANLrow > 0){
8479 for (int i = 0; i < ANLrow-1; i++) {
8483 ani->next = ani->next->next;
8485 [self willChangeValueForKey:@"animationListMA"];
8486 [animationListMA removeObjectAtIndex:ANLrow];
8487 [self didChangeValueForKey:@"animationListMA"];
8488 [animationListAC setSelectionIndex:999];
8493 [self willChangeValueForKey:@"animationListMA"];
8494 [animationListMA removeObjectAtIndex:ANLrow];
8495 [self didChangeValueForKey:@"animationListMA"];
8496 [animationListAC setSelectionIndex:999];
8509 EQ[clickIndexEQ].A = atkTop;
8511 if(!loadChipSideFlag){
8512 UC[clickIndex].A = atkTop;
8519 -(IBAction)attackEffectIV:(id)sender{
8521 if(clickIndexAL <= -1) return;
8522 if(ANLrow <= -1) return;
8524 [self willChangeValueForKey:@"animationListMA"];
8525 [animationListAC setValue:[ATIV image] forKeyPath:@"selection.img"];
8526 [self didChangeValueForKey:@"animationListMA"];
8532 A = EQ[clickIndexEQ].A;
8534 if(!loadChipSideFlag){
8535 A = UC[clickIndex].A;
8542 for(int i = 0;i < clickIndexAL;i++){
8549 for (int i = 0; i < ANLrow;i++) {
8554 ani->img = [[ATIV image] retain];
8568 EQ[clickIndexEQ].A = atkTop;
8570 if(!loadChipSideFlag){
8571 UC[clickIndex].A = atkTop;
8579 -(IBAction)attackEffectRadioBtn:(id)sender{
8584 A = EQ[clickIndexEQ].A;
8586 if(!loadChipSideFlag){
8587 A = UC[clickIndex].A;
8596 for(int i = 0;i < clickIndexAL;i++){
8602 if([ALBCnormal state] == YES){
8604 }else if([ALBCarchery state] == YES){
8606 }else if([ALBCgun state] == YES){
8611 A->fixType = fixTypeCnt;
8617 EQ[clickIndexEQ].A = atkTop;
8619 if(!loadChipSideFlag){
8620 UC[clickIndex].A = atkTop;
8629 -(IBAction)attackEffectNext:(id)sender{
8631 if(frameNum < frameMax){
8636 [ATframeCntTF setStringValue:[NSString stringWithFormat:@"%d/%d", frameNum, frameMax]];
8638 -(IBAction)attackEffectPrev:(id)sender{
8643 frameNum = frameMax;
8645 [ATframeCntTF setStringValue:[NSString stringWithFormat:@"%d/%d", frameNum, frameMax]];
8649 -(void)EventLoopANI:(NSTimer*)time{
8654 -(IBAction)attackEffectRun:(id)sender{
8659 A = EQ[clickIndexEQ].A;
8661 if(!loadChipSideFlag){
8662 A = UC[clickIndex].A;
8669 if([ATframeTF intValue] <= 0){
8670 [ATframeTF setStringValue:@"1"];
8673 for(int i = 0;i < clickIndexAL;i++){
8677 A->AN.frame = [ATframeTF intValue];
8680 EQ[clickIndexEQ].A = atkTop;
8682 if(!loadChipSideFlag){
8683 UC[clickIndex].A = atkTop;
8689 frameRunFlag = true;
8692 -(IBAction)attackEffectStop:(id)sender{
8694 frameRunFlag = false;
8699 -(IBAction)attackListButtonCell:(id)sender{
8704 -(void)aniTFChanged{
8705 [ATframeCntTF setStringValue:[NSString stringWithFormat:@"%d/%d", frameNum, frameMax]];
8727 @implementation UnitChipListEV
8734 -(id)initWithFrame:(NSRect)frame{
8735 self = [super initWithFrame:frame];
8739 scheduledTimerWithTimeInterval:1.0/30
8741 selector:@selector(EventLoopAN:)
8751 -(void)EventLoopAN:(NSTimer*)timer{
8752 static int frameCnt = 0;
8762 A = EQ[clickIndexEQ].A;
8764 if(!loadChipSideFlag){
8765 A = UC[clickIndex].A;
8773 for(int i = 0;i < clickIndexAL;i++){
8782 for (int i = 0; i < frameNum-1;i++) {
8787 [ani->snd setCurrentTime:0];
8789 ani->snd.loops = NO;
8796 if(frameCnt < A->AN.frame){
8802 if(frameNum < frameMax){
8809 [UnitChipListInst aniTFChanged];
8816 EQ[clickIndexEQ].A = atkTop;
8818 if(!loadChipSideFlag){
8819 UC[clickIndex].A = atkTop;
8826 [self setNeedsDisplay:YES];
8829 -(void)DrawImage:(NSImage*)image x:(float)x y:(float)y a:(float)a{
8831 frRect.size.height = image.size.height;
8832 frRect.size.width = image.size.width;
8834 frRect.origin.x = 0;
8835 frRect.origin.y = 0;
8838 drRect.origin.x = x;
8839 drRect.origin.y = y;
8840 drRect.size.height = image.size.height;
8841 drRect.size.width = image.size.width;
8843 [image drawInRect:drRect fromRect:frRect operation:NSCompositeSourceOver fraction:a respectFlipped:YES hints:nil];
8847 - (void)drawRect:(NSRect)dirtyRect {
8848 [super drawRect:dirtyRect];
8852 A = EQ[clickIndexEQ].A;
8854 if(!loadChipSideFlag){
8855 A = UC[clickIndex].A;
8863 if(clickIndexAL <= -1) return;
8865 for(int i = 0;i < clickIndexAL;i++){
8878 if(!(frameNum-1 < 1)){
8879 for (int i = 1; i < frameNum-1;i++) {
8884 for (int i = 1; i < frameMax;i++) {
8888 [self DrawImage:ani->img x:ani->x + ani->ax y:ani->y + ani->ay a:0.5f];
8893 for (int i = 1; i < frameNum;i++) {
8896 [self DrawImage:ani->img x:ani->x + ani->ax y:ani->y + ani->ay a:1.0f];
8904 EQ[clickIndexEQ].A = atkTop;
8906 if(!loadChipSideFlag){
8907 UC[clickIndex].A = atkTop;
8914 -(void)mouseDown:(NSEvent *)theEvent{
8919 A = EQ[clickIndexEQ].A;
8921 if(!loadChipSideFlag){
8922 A = UC[clickIndex].A;
8929 if(clickIndexAL <= -1) return;
8931 for(int i = 0;i < clickIndexAL;i++){
8939 for (int i = 0; i < frameNum-1; i++) {
8955 EQ[clickIndexEQ].A = atkTop;
8957 if(!loadChipSideFlag){
8958 UC[clickIndex].A = atkTop;
8965 startPoint = [self convertPoint:[theEvent locationInWindow] fromView:nil];
8967 startPoint.x = startPoint.x - imgGx;
8968 startPoint.y = startPoint.y - imgGy;
8971 -(void)mouseDragged:(NSEvent *)theEvent{
8972 endPoint = [self convertPoint:[theEvent locationInWindow] fromView:nil];
8974 imgGx = endPoint.x - startPoint.x;
8975 imgGy = endPoint.y - startPoint.y;
8980 A = EQ[clickIndexEQ].A;
8982 if(!loadChipSideFlag){
8983 A = UC[clickIndex].A;
8990 if(clickIndexAL <= -1) return;
8992 for(int i = 0;i < clickIndexAL;i++){
9000 for (int i = 0; i < frameNum-1; i++) {
9009 //NSLog(@"%d,%d", b->L->x, b->L->y);
9017 EQ[clickIndexEQ].A = atkTop;
9019 if(!loadChipSideFlag){
9020 UC[clickIndex].A = atkTop;
9025 [self setNeedsDisplay:YES];