cocoaTouch/otherSrc/HogButtonView.m
author koda
Thu, 17 Jun 2010 19:57:51 +0200
changeset 3513 f589230fa21b
parent 3364 e5403e2bf02c
permissions -rw-r--r--
now it's possible to select the scheme file in the ifrontendfix a type about loading an image (iphone file system IS case senstive) add rotation for iphone build too make the ifrontend work again with 3.0 sdk reworked openalbridge following most of an old implementation by Smaxx and making it more modular -- now sources are limited but the memory extension and cleanup is todo nil'd many variables in engine that were causing intialization problems

//
//  HogButtonView.m
//  HedgewarsMobile
//
//  Created by Vittorio on 20/04/10.
//  Copyright 2010 __MyCompanyName__. All rights reserved.
//

#import "HogButtonView.h"
#import "CommodityFunctions.h"
#import "UIImageExtra.h"

@implementation HogButtonView
@synthesize singleHog, numberOfHogs, ownerDictionary;

-(id) initWithFrame:(CGRect)frame {
    if ((self = [super initWithFrame:frame])) {
        self.backgroundColor = [UIColor clearColor];
        
        NSString *normalHogFile = [[NSString alloc] initWithFormat:@"%@/Hedgehog.png",GRAPHICS_DIRECTORY()];
        UIImage *normalHogSprite = [[UIImage alloc] initWithContentsOfFile:normalHogFile andCutAt:CGRectMake(96, 0, 32, 32)];
        [normalHogFile release];
        
        self.singleHog = normalHogSprite;
        [normalHogSprite release];
        [self addTarget:self action:@selector(addOne) forControlEvents:UIControlEventTouchUpInside];
    }
    return self;
}

-(void) addOne {
    self.highlighted = NO;
    NSInteger number = self.numberOfHogs;
    number++;
    [self drawManyHogs:number];
}

-(void) drawManyHogs:(NSInteger) hogs {
    if (numberOfHogs != hogs) {
        if (hogs <= MAX_HOGS && hogs >= 1)
            numberOfHogs = hogs;
        else {
            if (hogs > MAX_HOGS)
                numberOfHogs = 1;
            else
                numberOfHogs = MAX_HOGS;
        }
        [ownerDictionary setObject:[NSNumber numberWithInt:numberOfHogs] forKey:@"number"];
        
        UIImage *teamHogs = [[[UIImage alloc] init] autorelease];
        for (int i = 0; i < numberOfHogs; i++) {
            teamHogs = [singleHog mergeWith:teamHogs
                                    atPoint:CGPointMake(8, 0) 
                                     atSize:CGSizeMake(88, 32)];
        }
        [self setImage:teamHogs forState:UIControlStateNormal];
    }
}

-(void) dealloc {
    [ownerDictionary release];
    [singleHog release];
    [super dealloc];
}


@end