5 // Created by Killery on 2013/02/18.
6 // Copyright (c) 2013年 Killery. All rights reserved.
10 #import "FieldScene.h"
12 @implementation EventScene
21 scheduledTimerWithTimeInterval:1.0/30
22 target:self selector:@selector(EventLoopES:)
23 userInfo:nil repeats:YES
32 -(void)EventLoopES:(NSTimer *)timer{
49 startOrEndFlag = false;
52 gameOverFlag2 = false;
61 startOrEndFlag = false;
64 backTitleFlag2 = false;
71 stringInitFlag = true;
72 StringText *stringText = [[StringText alloc] init];
73 [stringText InitStringList];
74 stringInitFlag = false;
85 [MapViewInst loadMapChip];
87 [nameTF setStringValue:@""];
88 [dialogTF setStringValue:@""];
89 [faceIV setImage:nil];
90 [wallIV setImage:nil];
91 [fsWindow makeKeyAndOrderFront:nil];
93 FieldSceneInitFlag = true;
96 if(MF[MFselectedRow+1].MS.battleSetMode){
97 setBattleModeFlag = true;
99 windowPoint.x = [esWindow frame].origin.x;
100 windowPoint.y = [esWindow frame].origin.y;
101 [bsWindow setFrameOrigin:windowPoint];
102 [bsWindow makeKeyAndOrderFront:nil];
104 startOrEndFlag = true;
110 EventViewDraw = true;
111 startOrEndFlag = false;
112 [nameTF setStringValue:@""];
113 [dialogTF setStringValue:@""];
114 [faceIV setImage:nil];
115 [wallIV setImage:nil];
116 [titleWindow makeKeyAndOrderFront:nil];
124 while(![jumpName isEqualToString:ST->labelName]) {
137 while(dialogNumber > dCount) {dCount++;
145 static float fiValue = 0;
146 static float foValue = 1.0;
147 static bool fadeFlag;
148 static bool fadeOutRdy;
149 static bool fadeInRdy;
150 static bool omankoFlag;
151 static bool ochinchinFlag;
152 static bool blackGroundFlag;
153 static NSImage *postImageWall;
156 postImageWall = ST->imgWall;
159 blackGroundFlag = true;
175 ochinchinFlag = false;
176 blackGroundFlag = false;
177 postImageWall = NULL;
179 EventViewDraw = true;
180 startOrEndFlag = false;
188 if(evActiveEnd){evActiveEnd = false;
199 ochinchinFlag = false;
200 blackGroundFlag = false;
201 postImageWall = NULL;
204 startOrEndFlag = false;
205 EventViewDraw = true;
209 [nameTF setStringValue:@""];
210 [dialogTF setStringValue:@""];
211 [faceIV setImage:nil];
212 [wallIV setImage:nil];
213 [titleWindow makeKeyAndOrderFront:nil];
220 [MapViewInst loadMapChip];
222 [fsWindow makeKeyAndOrderFront:nil];
225 if(MF[MFselectedRow+1].MS.battleSetMode){
226 setBattleModeFlag = true;
228 windowPoint.x = [esWindow frame].origin.x;
229 windowPoint.y = [esWindow frame].origin.y;
230 [bsWindow setFrameOrigin:windowPoint];
231 [bsWindow makeKeyAndOrderFront:nil];
240 ochinchinFlag = false;
241 blackGroundFlag = false;
242 postImageWall = NULL;
244 FieldSceneInitFlag = true;
246 startOrEndFlag = true;
250 [nameTF setStringValue:@""];
251 [dialogTF setStringValue:@""];
252 [faceIV setImage:nil];
253 [wallIV setImage:nil];
254 //[titleWindow makeKeyAndOrderFront:nil];
260 [selectionDialog makeKeyAndOrderFront:nil];
265 [trueSelectionDialog makeKeyAndOrderFront:nil];
269 NSString *oopsString = @"";
271 NSArray *oopsArray = [ST->string componentsSeparatedByString:@"$$"];
272 if([oopsArray count] > 1){
273 NVALUE *NVtop = ST->N;
275 if([[oopsArray objectAtIndex:1] isEqualToString:ST->N->key]){
276 oopsString = [oopsString stringByAppendingString:ST->N->value];
281 oopsString = [oopsString stringByAppendingString:[oopsArray objectAtIndex:2]];
282 ST->string = [[NSString stringWithString:oopsString] retain];
283 //NSLog(@"%@", oopsString);
287 NSString *omfgString = @"";
289 NSArray *omfgArray = [ST->name componentsSeparatedByString:@"$$"];
290 if([omfgArray count] > 1){
291 NVALUE *NVtop = ST->N;
293 if([[omfgArray objectAtIndex:1] isEqualToString:ST->N->key] ){
294 omfgString = [omfgString stringByAppendingString:ST->N->value];
299 ST->name = [[NSString stringWithString:omfgString] retain];
300 //NSLog(@"%@", omfgString);
305 blackGroundFlag = false;
306 if(ST->wallFadeIn && fiValue == 0){
313 postImageWall = ST->imgWall;
316 if(evActive && !evActiveEnd){
317 textMax = (int)[ST->string length];
320 [nameTF setStringValue:tName];
321 [dialogTF setStringValue:[text substringToIndex:dialogLengh - 1]];
322 [faceIV setImage:ST->img];
323 [faceIV setImageScaling:NSScaleToFit];
324 [wallIV setImage:ST->imgWall];
325 [wallIV setImageScaling:NSScaleToFit];
326 [backIV setImageScaling:NSScaleToFit];
328 if(ST->iNameWallSort){
330 [self saveWalltoGallery];
333 if(fadeInRdy && fiValue < 1.0){fadeFlag = true;
335 if(fiValue > 1.0) fiValue = 1.0;
336 [wallIV setAlphaValue:fiValue];
340 static int pointerCnt = 0;
341 if(dialogLengh < textMax){
343 [textPointer setHidden:YES];
352 if([textPointer isHidden]){
353 [textPointer setHidden:NO];
355 [textPointer setHidden:YES];
362 if(evMouseClicked && dialogLengh == textMax && postImageWall != ST->next->imgWall && ST->wallFadeOut){
367 if(evMouseClicked && dialogLengh == textMax && postImageWall != ST->next->imgWall && ST->next->wallFadeIn){
369 ochinchinFlag = true;
373 if(evMouseClicked && dialogLengh == textMax && postImageWall != ST->next->imgWall){
377 if(fadeOutRdy && foValue > 0){fadeFlag = true;
380 if(foValue < 0) foValue = 0;
381 [wallIV setAlphaValue:foValue];
385 if(!fadeInRdy && !fadeOutRdy && ST->wallChanged){
386 [wallIV setAlphaValue:1.0];
389 if(omankoFlag){omankoFlag = false;
391 }if(ochinchinFlag){ochinchinFlag = false;
398 if(blackGroundFlag) {
399 [wallIV setAlphaValue:0];
402 if(evMouseClicked){evMouseClicked = false;//マウスかグリックされたとき
404 if(dialogNumber <= evDialogMax && dialogLengh == [text length]) {//テキストがマックスのとき
408 [textPointer setHidden:YES];
412 jumpName = [ST->jumpName retain];
416 NSArray *omgArray = [ST->namingName componentsSeparatedByString:@"≠≠"];
417 if([omgArray count] > 1){
421 namingName = [ST->N->title retain];
427 if(namingFlag && ST->N){
429 [selectionDialog setTitle:ST->N->title];
431 [selectionDialog setTitle:@""];
432 [selectionDialog makeKeyAndOrderFront:nil];
438 selectionFlag = true;
439 Slists = calloc(1, sizeof(SVALUE));
443 [BTN1 setTransparent:YES];
444 [BTN1 setEnabled:NO];
445 [BTN2 setTransparent:YES];
446 [BTN2 setEnabled:NO];
447 [BTN3 setTransparent:YES];
448 [BTN3 setEnabled:NO];
449 [BTN4 setTransparent:YES];
450 [BTN4 setEnabled:NO];
451 [BTN5 setTransparent:YES];
452 [BTN5 setEnabled:NO];
453 [BTN6 setTransparent:YES];
454 [BTN6 setEnabled:NO];
455 [BTN7 setTransparent:YES];
456 [BTN7 setEnabled:NO];
457 [BTN8 setTransparent:YES];
458 [BTN8 setEnabled:NO];
459 [BTN9 setTransparent:YES];
460 [BTN9 setEnabled:NO];
462 SVALUE *STStop = ST->S;
465 Slists->next = calloc(1, sizeof(SVALUE));
466 Slists = Slists->next;
469 [BTN1 setTitle:ST->S->slct];
470 [BTN1 setTransparent:NO];
471 [BTN1 setEnabled:YES];
472 [trueSelectionDialog setFrame:NSMakeRect([NSScreen mainScreen].frame.size.width/2-200, [NSScreen mainScreen].frame.size.height/2, 400, 80) display:YES];
473 }ST->S = ST->S->next;
476 Slists->next = calloc(1, sizeof(SVALUE));
477 Slists = Slists->next;
480 [BTN2 setTitle:ST->S->slct];
481 [BTN2 setTransparent:NO];
482 [BTN2 setEnabled:YES];
483 [trueSelectionDialog setFrame:NSMakeRect([NSScreen mainScreen].frame.size.width/2-200, [NSScreen mainScreen].frame.size.height/2, 400, 105) display:YES];
484 }ST->S = ST->S->next;
487 Slists->next = calloc(1, sizeof(SVALUE));
488 Slists = Slists->next;
491 [BTN3 setTitle:ST->S->slct];
492 [BTN3 setTransparent:NO];
493 [BTN3 setEnabled:YES];
494 [trueSelectionDialog setFrame:NSMakeRect([NSScreen mainScreen].frame.size.width/2-200, [NSScreen mainScreen].frame.size.height/2, 400, 140) display:YES];
495 }ST->S = ST->S->next;
498 Slists->next = calloc(1, sizeof(SVALUE));
499 Slists = Slists->next;
502 [BTN4 setTitle:ST->S->slct];
503 [BTN4 setTransparent:NO];
504 [BTN4 setEnabled:YES];
505 [trueSelectionDialog setFrame:NSMakeRect([NSScreen mainScreen].frame.size.width/2-200, [NSScreen mainScreen].frame.size.height/2, 400, 155) display:YES];
506 }ST->S = ST->S->next;
509 Slists->next = calloc(1, sizeof(SVALUE));
510 Slists = Slists->next;
513 [BTN5 setTitle:ST->S->slct];
514 [BTN5 setTransparent:NO];
515 [BTN5 setEnabled:YES];
516 [trueSelectionDialog setFrame:NSMakeRect([NSScreen mainScreen].frame.size.width/2-200, [NSScreen mainScreen].frame.size.height/2, 400, 180) display:YES];
517 }ST->S = ST->S->next;
520 Slists->next = calloc(1, sizeof(SVALUE));
521 Slists = Slists->next;
524 [BTN6 setTitle:ST->S->slct];
525 [BTN6 setTransparent:NO];
526 [BTN6 setEnabled:YES];
527 [trueSelectionDialog setFrame:NSMakeRect([NSScreen mainScreen].frame.size.width/2-200, [NSScreen mainScreen].frame.size.height/2, 400, 205) display:YES];
528 }ST->S = ST->S->next;
531 Slists->next = calloc(1, sizeof(SVALUE));
532 Slists = Slists->next;
535 [BTN7 setTitle:ST->S->slct];
536 [BTN7 setTransparent:NO];
537 [BTN7 setEnabled:YES];
538 [trueSelectionDialog setFrame:NSMakeRect([NSScreen mainScreen].frame.size.width/2-200, [NSScreen mainScreen].frame.size.height/2, 400, 230) display:YES];
539 }ST->S = ST->S->next;
542 Slists->next = calloc(1, sizeof(SVALUE));
543 Slists = Slists->next;
546 [BTN8 setTitle:ST->S->slct];
547 [BTN8 setTransparent:NO];
548 [BTN8 setEnabled:YES];
549 [trueSelectionDialog setFrame:NSMakeRect([NSScreen mainScreen].frame.size.width/2-200, [NSScreen mainScreen].frame.size.height/2, 400, 255) display:YES];
550 }ST->S = ST->S->next;
553 Slists->next = calloc(1, sizeof(SVALUE));
554 Slists = Slists->next;
557 [BTN9 setTitle:ST->S->slct];
558 [BTN9 setTransparent:NO];
559 [BTN9 setEnabled:YES];
560 [trueSelectionDialog setFrame:NSMakeRect([NSScreen mainScreen].frame.size.width/2-200, [NSScreen mainScreen].frame.size.height/2, 400, 280) display:YES];
561 }ST->S = ST->S->next;
564 [trueSelectionDialog makeKeyAndOrderFront:nil];
570 }else if(dialogLengh != [text length]){//テキストが途中のとき
571 dialogLengh = (int)[text length];
575 if(dialogNumber > evDialogMax){
583 -(void)saveWalltoGallery{
585 NSString *directoryPath;
587 directoryPath = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
588 [[NSFileManager defaultManager] changeCurrentDirectoryPath:directoryPath];
590 NSString *pathDATA = @"data/StringList/preset.txt";
592 NSString *data = @"";
594 data = [NSString stringWithContentsOfFile:pathDATA encoding:NSUTF8StringEncoding error:nil];
596 NSArray *dataArray = [data componentsSeparatedByString:@"\n"];
597 for(int i = 0;i < [dataArray count];i++){
598 NSArray *item = [[dataArray objectAtIndex:i] componentsSeparatedByString:@","];
599 if([[item objectAtIndex:0] isEqualToString:ST->iNameWall]){
603 data = [[data stringByAppendingFormat:@"%@,%@\n", ST->iNameWall, ST->iNameWallSort] retain];
605 [data writeToFile:pathDATA atomically:YES encoding:NSUTF8StringEncoding error:nil];
610 -(IBAction)selectionSubmit:(id)sender{
613 ST->N->value = [[NSString stringWithString:[selectionTF stringValue]] retain];
616 [selectionDialog close];
619 -(IBAction)btn1:(id)sender{
621 jumpName = [[NSString stringWithString:Slists->jump] retain];
623 selectionFlag = false;
624 [trueSelectionDialog close];
627 -(IBAction)btn2:(id)sender{
628 jumpName = [[NSString stringWithString:Slists->jump] retain];
630 selectionFlag = false;
631 [trueSelectionDialog close];
633 -(IBAction)btn3:(id)sender{
634 jumpName = [[NSString stringWithString:Slists->jump] retain];
636 selectionFlag = false;
637 [trueSelectionDialog close];
639 -(IBAction)btn4:(id)sender{
640 jumpName = [[NSString stringWithString:Slists->jump] retain];
642 selectionFlag = false;
643 [trueSelectionDialog close];
645 -(IBAction)btn5:(id)sender{
646 jumpName = [[NSString stringWithString:Slists->jump] retain];
648 selectionFlag = false;
649 [trueSelectionDialog close];
651 -(IBAction)btn6:(id)sender{
652 jumpName = [[NSString stringWithString:Slists->jump] retain];
654 selectionFlag = false;
655 [trueSelectionDialog close];
657 -(IBAction)btn7:(id)sender{
658 jumpName = [[NSString stringWithString:Slists->jump] retain];
660 selectionFlag = false;
661 [trueSelectionDialog close];
663 -(IBAction)btn8:(id)sender{
664 jumpName = [[NSString stringWithString:Slists->jump] retain];
666 selectionFlag = false;
667 [trueSelectionDialog close];
669 -(IBAction)btn9:(id)sender{
670 jumpName = [[NSString stringWithString:Slists->jump] retain];
672 selectionFlag = false;
673 [trueSelectionDialog close];