OSDN Git Service

セーブデータの一部をシリアライズする事に成功、マップスクリプトとともにユニット情報もコンバートできたらいいのだが…
[awarsiii/AwarsIV.git] / Awars III / FieldScene.h
index 7844db8..9917274 100755 (executable)
@@ -9,6 +9,7 @@
 #import <Foundation/Foundation.h>
 #import <AVFoundation/AVFoundation.h>
 #import <AVKit/AVKit.h>
+#import <stdio.h>
 #import "MapEditor.h"
 #import "MapView.h"
 #import "FieldView.h"
 #import "BuildChipList.h"
 #import "EventScene.h"
 #import "BattleView.h"
+#import "SaveDataList.h"
+#import "LevelList.h"
+#import "LoadChipList.h"
+
+#define SAVEDATADATMAX 4096
+#define DATAFILE_NAME "data.dat"
+#define INSTANT_IMG "image.png"
+
+#define FIELD_TYPE_A 0
+#define FIELD_TYPE_B 1
+#define FIELD_TYPE_C 2
+#define FIELD_TYPE_D 3
+#define FIELD_TYPE_E 4
+#define FIELD_TYPE_S 5
+#define FIELD_TYPE_SS 6
+
+#define MOVE_TYPE_RIKU 0
+#define MOVE_TYPE_UMI 1
+#define MOVE_TYPE_CHU 2
+#define MOVE_TYPE_SORA 3
+
+typedef struct _STATUS2{
+    
+    double HP;
+    double EN;
+    double WT;
+    
+    int MOV;
+    double ARM;
+    double MOB;
+    double LIM;
+    
+    short size;//T:極小 S:人型サイズ B:乗り物サイズ H:建物サイズ G:巨人サイズ M:モビールスーツサイズ L:戦艦サイズ LL:大戦艦サイズ E:移動基地サイズ I:大陸サイズ
+    short typeMOVE;
+    short loadCnt;
+    
+    int cSupply;
+    int cFood;
+    int cMoney;
+    int cWT;
+    
+}STATUS2;
+
+typedef struct _LOADCHIPD{
+    int chipNumb;
+    
+    NSString *name;
+    NSString *nameID;
+    struct _RESIST R_C;
+    struct _STATUS2 S_C;
+
+}LOADCHIPD;
+
+typedef struct _LOADCHIP{
+    
+    struct _RESIST R_C;
+    struct _RESIST R_M;
+    struct _ATTACK *A;
+    
+    NSString *name;
+    NSString *nameRecognition;
+    NSString *nameID;
+    
+    struct _STATUS2 S_C;
+    struct _STATUS2 S_M;
+    
+    NSString *iName;
+    NSImage *img;
+    
+    NSString *iNameb;
+    NSImage *imgb;
+    
+    int chipNumb;
+    
+    NSString *aName;
+    int attackListNum;
+    
+}LOADCHIP;
+
+typedef struct _BSTATUS{
+    int HP;
+    int WT;
+    int WTE;
+    int WTN;
+    NSString *name;
+    
+}BSTATUS;
+
+typedef struct _BUILDCHIPD{
+    int chipNumb;
+    
+    NSString *name;
+    NSString *nameID;
+    struct _BSTATUS S_C;
+    
+}BUILDCHIPD;
+
+typedef struct _BUILDCHIP{
+    
+    NSString *name;
+    NSString *nameR;
+    NSString *nameID;
+    
+    struct _RESEARCH *R;
+    struct _BSTATUS S_C;
+    struct _BSTATUS S_M;
+    
+    int chipNumb;
+    
+    int dmgfix;
+    int type;
+    int defLv;
+    
+    int Csupply;
+    int Cfood;
+    int Cmoney;
+    
+    
+    int CsupplyNext;
+    int CfoodNext;
+    int CmoneyNext;
+    
+    int Esupply;
+    int Efood;
+    int Emoney;
+    
+    
+    int recHP;
+    int recMP;
+    int recEN;
+    int recHPL;
+    bool inroadsFlag;
+    bool capture;
+    NSString *linkDest;
+    NSString *linkNext;
+    
+    
+    NSString *iName;
+    NSImage *img;
+    
+    NSString *iNameb;
+    NSImage *imgb;
+    
+    bool invisible;
+    bool GuildFlag;
+    
+}BUILDCHIP;
 
 typedef struct _UNIT{
     struct _UNIT *next;
@@ -45,15 +193,53 @@ typedef struct _UNIT{
     bool unControlable;
     bool joinArmyFromNext;
     bool persuasion;
-    int atkRange;
     
     bool targType1L;
     bool targType2L;
     bool targType1D;
     bool targType2D;
     
+    int atkRange;
+    
 }UNIT;
 
+typedef struct _UNITD{
+    bool CPU;
+    int number;
+    int team;
+    int chipNumber;
+    int chipNumberL;
+    
+    int x;
+    int y;
+    int z;
+    
+    int ix;
+    int iy;
+    int iz;
+    
+    bool dead;
+    
+    bool loadChipFlag;
+    
+    bool unControlable;
+    bool joinArmyFromNext;
+    bool persuasion;
+    
+    bool targType1L;
+    bool targType2L;
+    bool targType1D;
+    bool targType2D;
+
+    NSString *army;
+    
+    int imgAdCnt;
+    int imgAdFix;
+    NSImage *img;
+
+    struct _UNITCHIPD C;
+}UNITD;
+
 typedef struct _UNION{
     
     
@@ -79,6 +265,26 @@ typedef struct _BUILD{
 
 }BUILD;
 
+typedef struct _BUILDD{
+    
+    int number;
+    int team;
+    int chipNumber;
+    int makeLv;
+    
+    int x;
+    int y;
+    int z;
+    
+    bool dead;
+    
+    int imgAdCnt;
+    int imgAdFix;
+    NSImage *img;
+
+    struct _BUILDCHIPD C;
+    
+}BUILDD;
 
 typedef struct _PLAYER{
     
@@ -105,6 +311,11 @@ typedef struct _UNITPOINT{
 
 }UNITPOINT;
 
+NSMutableArray *SAV;
+
+LOADCHIP LC[4096];
+BUILDCHIP BC[512];
+
 double eventTime;
 
 PLAYER P[10];
@@ -203,7 +414,7 @@ bool bugFixFlag1;
 bool bugFixFlag2;
 bool bugFixFlag3;
 
-MAPSCRIPTD *MSDTO;
+struct MAPSCRIPTD *MSDTO;
 
 bool messageEndFlag;
 
@@ -232,6 +443,101 @@ ATTACK *attackTop;
 ATTACK *attackTop2;
 UNIT *effCun;
 
+bool fuckingLoadBugFix;
+bool battleEndFlag;
+
+int oopsCnt;
+int lmao;
+int vaginaCnt;
+
+
+#define dUMAX 9999
+#define dBMAX 9999
+typedef struct _SAVEDATADAT{
+    
+    NSString *name;
+    
+    int imgAdressCnt;
+    int imgAdressFix;
+    NSImage *img;
+    
+    int MFselectedRow;
+    int storyNumb;
+    int scenarioNumb;
+    
+    NSString *mapfileName;
+    NSString *levelName;
+    NSString *scenarioName;
+    
+    int chipHeight;
+    int chipWidth;
+    
+    int posX;
+    int posY;
+    
+    int eSlctX;
+    int eSlctY;
+    
+    int registerNum;
+    int registerNumB;
+    
+    int esSceneProc;
+    
+    bool endGameCondition;
+    bool initMapFlag;
+    bool initStatusFlag;
+    bool TeamCountFlag;
+    bool battleBegin;
+    bool startES;
+    
+    bool cpuAImodeflag;
+    bool cpuModeMOVEflag;
+    bool cpuModeATTACKflag;
+    bool cpuTurnEndFlag;
+    bool waitSwtichFlag;
+    bool battleReadyUpFlag;
+    bool setBattleModeFlag;
+    
+    bool wtRdy;
+    bool wtRdy2;
+    bool wtRdy3;
+    
+    int chipNum[1002][1002];
+    int buildNum[1002][1002];
+    int unitNum[1002][1002];
+    int loadNum[1002][1002];
+    int buildTeam[1002][1002];
+    int unitTeam[1002][1002];
+    
+    //あったものを読み込むというよりは一部のデータをもとに再現するのにおよそ等しい
+    struct _UNITD dU[dUMAX];
+    struct _BUILDD dB[dBMAX];
+    
+    struct _PLAYER P[10];
+    
+    struct _MAPSCRIPT *MS;
+    
+    /*
+    struct _UNIT *UTop;
+    struct _BUILD *BTop;
+    
+    struct _UNIT *Uselected;
+    struct _UNIT *unitBreak;
+    struct _UNIT *Utarget;
+     */
+}SAVEDATADAT;
+
+int datRow;
+SAVEDATADAT sdd;
+SAVEDATADAT sdd2[SAVEDATADATMAX];
+
+int routeCnt;
+bool datExistFlag;
+NSImage *changedImg;
+bool saveFlag;
+
+bool saveDataDatFlag;
+
 struct _MAPSCRIPT0 *MSDP0top;
 struct _MAPSCRIPT0 *MSDPtop;
 
@@ -248,6 +554,7 @@ NSSound *BGMsub;
 NSSound *SEsub;
 
 bool eventEndFlag;
+int displayBattleCheckPanelFlag;
 
 bool gameOverFlag;
 bool gameOverFlag2;
@@ -301,11 +608,22 @@ bool guildRE2;
 int Gnum1;
 int Gnum2;
 
+int mapChipDataLoadProc;
+
+int LFOLrow;
+
+char *datFilePath;
+
 @interface FieldScene : NSObject
 {
     NSTimer *time;
     
     
+    IBOutlet NSTextField *btHITtf1;
+    IBOutlet NSTextField *btHITtf2;
+    IBOutlet NSTextField *btDMGtf1;
+    IBOutlet NSTextField *btDMGtf2;
+    
     IBOutlet NSTextField *battleReadyUpPN1;
     IBOutlet NSTextField *battleReadyUpPN2;
     IBOutlet NSTextField *battleReadyUpRule;
@@ -542,8 +860,47 @@ int Gnum2;
     IBOutlet NSArrayController *STskillListAC;
     IBOutlet NSTableView *STskillListTV;
     
+    IBOutlet NSPanel *FSMenu;
+    
+    IBOutlet NSWindow *saveFileDialog;
+    
+    IBOutlet NSPanel *saveFileInputPanel;
+    IBOutlet NSTextField *saveFileInputTF;
+    NSMutableArray *saveFileInputListMA;
+    IBOutlet NSArrayController *saveFileInputListAC;
+    IBOutlet NSTableView *saveFileInputListTV;
+    
+    IBOutlet NSPanel *loadFileOutputPanel;
+    IBOutlet NSTextField *loadFileOutputTF;
+    NSMutableArray *loadFileOutputListMA;
+    IBOutlet NSArrayController *loadFileOutputListAC;
+    IBOutlet NSTableView *loadFileOutputListTV;
+    
+    
+    IBOutlet NSPanel *saveGamePanel;
+    IBOutlet NSTextField *saveGameTF;
+    IBOutlet NSImageView *saveGameIV;
+    IBOutlet NSTextField *saveGameLB;
+    NSMutableArray *saveGameListMA;
+    IBOutlet NSArrayController *saveGameListAC;
+    IBOutlet NSTableView *saveGameListTV;
+    
 }
--(MAPSCRIPT0*)setMessage:(MAPSCRIPT0*)MS0;
+-(void)loadStruct;
+
+-(IBAction)saveGameSubmit:(id)sender;
+-(IBAction)saveGameCancel:(id)sender;
+
+-(struct MAPSCRIPT0*)setMessage:(struct MAPSCRIPT0*)MS0;
+
+-(IBAction)loadFileOutputSubmit:(id)sender;
+-(IBAction)loadFileOutputCancel:(id)sender;
+
+-(IBAction)saveFileInputSubmit:(id)sender;
+-(IBAction)saveFileInputCancel:(id)sender;
+
+-(IBAction)saveFileDialogSubmit:(id)sender;
+-(IBAction)saveFileDialogCancel:(id)sender;
 
 -(IBAction)STsubmit:(id)sender;
 
@@ -597,12 +954,17 @@ int Gnum2;
 
 
 
-
-
+-(IBAction)FSVsave:(id)sender;
+-(IBAction)FSVtitle:(id)sender;
+-(IBAction)FSVcancel:(id)sender;
 
 
 -(int)chooseGuildList:(int*)value gcnum:(int)gcnum;
 -(void)addBuildStatus;
+-(void)displaySideMenu;
+-(void)displaySaveFileDialog;
+-(void)initLoadFileOutputList;
+-(void)initFileOutPutListSet;
 
 @end