
Some art done for the store guy. His arm kinda looks weird..
店のおやじの絵描いたで。腕変になってんちゃうますのん〜。
An archive of my battle for learning how to make an iPhone game, both coding and art.
勉強しながらプログラミングとグラフィックを全部一人で作ってしまうiPhoneゲーム製作戦記!
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UIImage *aIconImage = [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"some_image" ofType:@"png"]];
cell.imageView.image = aIconImage;
@interface StatusViewController : UIViewController <UIImagePickerControllerDelegate, UINavigationControllerDelegate> {
- (IBAction)showImagePicker:(id)sender
{
UIImagePickerController *imagePickerController = [[UIImagePickerController alloc] init];
imagePickerController.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
imagePickerController.delegate = self;
imagePickerController.allowsImageEditing = YES;
[self presentModalViewController:imagePickerController animated:YES];
[imagePickerController release];
}
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
[self dismissModalViewControllerAnimated:YES];
}
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *touch = [touches anyObject];
CGPoint currentTouchPosition = [touch locationInView:self.view];
float deltaX2 = originalPoint.x - currentTouchPosition.x;
float deltaY2 = fabsf(originalPoint.y - currentTouchPosition.y);
float c = sqrt( pow(deltaY2,2) + pow(deltaX2,2));
float radian = acos( (deltaX2 / c ) );
if(originalPoint.y < currentTouchPosition.y) radian = -radian;
CGAffineTransform transformRadian = CGAffineTransformMakeRotation(radian);
theSlash.transform = transformRadian;
...
NSString *aFilePath = [[NSBundle mainBundle] pathForResource:@"mypicture" ofType:@"png"];
UIImage *aImage = [UIImage imageWithContentsOfFile:aFilePath];
UIImageView *aImageView = [[UIImageView alloc] initWithImage:aImage];
myTableView.alwaysBounceVertical = NO;
myTableView.scrollEnabled = YES;
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:nil message:@"This is UIAlertView" delegate:nil cancelButtonTitle:@"OKotherButtonTitles:nil];
[alert show];
[alert release];
[LanguageManager translate:@"Start"];
+ (NSString *)translate:(NSString *)aString {
Settings *gameSettings = [Settings getInstance];
if (gameSettings.languageSettings == 0) return aString; // if user setting is English
if (gameSettings.languageSettings == 1){ //if user setting is Japanese
if(aString == @"Start") return @"スタート";
if(aString == @"Continue") return @"コンティニュー";
...
NSArray *languages = [[NSUserDefaults standardUserDefaults] objectForKey:@"AppleLanguages"];
NSString *currentLanguage = [languages objectAtIndex:0];
NSLog(@"Current Locale: %@", [[NSLocale currentLocale] localeIdentifier]);
NSLog(@"Current language: %@", currentLanguage);
NSLog(@"Welcome Text: %@", NSLocalizedString(@"TitleKey", @""));
[self performSelector:@selector(battle02:) withObject:NO afterDelay:1];
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
[NSThread sleepForTimeInterval:0.3];
// do stuff here
[self performSelectorOnMainThread:@selector(addToBattleTextView:) withObject:aString waitUntilDone:NO];
[pool release];
theData = [NSData dataWithContentsOfFile:dataFilePath];
decoder = [[NSKeyedUnarchiver alloc] initForReadingWithData:theData];
Player *tempPlayer = [decoder decodeObjectForKey:@"playerData"];
- (void)savePlayerStateBeforeTerminate {
Player *player = [Player getInstance];
Player *tempPlayer = [[Player alloc] init];
tempPlayer = player;
NSMutableData *theData;
NSKeyedArchiver *encoder;
theData = [NSMutableData data];
encoder = [[NSKeyedArchiver alloc] initForWritingWithMutableData:theData];
[encoder encodeObject:tempPlayer forKey:@"playerData"];
[encoder finishEncoding];
[theData writeToFile:dataFilePath atomically:YES];
[encoder release];
}
- (id)initWithCoder:(NSCoder *)decoder
{
playerLevel = [decoder decodeIntegerForKey:@"playerLevel"];
playerFloor = [decoder decodeIntegerForKey:@"playerFloor"];
playerRoom = [decoder decodeIntegerForKey:@"playerRoom"];
...
return self;
}
- (void)encodeWithCoder:(NSCoder *)coder {
//[super encodeWithCoder:coder];
[coder encodeInt:playerLevel forKey:@"playerLevel"];
[coder encodeInt:playerFloor forKey:@"playerFloor"];
...
}
- (id)copyWithZone:(NSZone *)zone {
id aCopy = [[[self class] alloc] init];
[aCopy setItemAbundancyPercent:[self itemAbundancyPercent]];
[aCopy setItemPrice:[self itemPrice]];
[aCopy setItemCategory:[self itemCategory]];
[aCopy setItemName:[self itemName]];
[aCopy setItemWeapon:[self itemWeapon]];
[aCopy setEffectPower:[self effectPower]];
[aCopy setItemAttributeNumber:[self itemAttributeNumber]];
[aCopy setItemDescription:[self itemDescription]];
[aCopy setIsEquipped:[self isEquipped]];
return aCopy;
}