rel='stylesheet' href='http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.css'

вторник, 25 сентября 2012 г.

Cookie во флеш

Здравствуйте, и так я продолжаю свое изучение флеша и принялся за разработку игры под кодовым названием GameX.

Работа полным ходом закипела, меня прям не на шутку затянуло)) Если на дельфи последнее время я себя заставлял садиться и что-то писать, то тут уже неделю не могу выспаться, прихожу домой с работы и до поздней ночи сижу что-то кодю во флеш.
Пол дня сегодня думал как сохранять прогресс игры между сеансами, незнал как правильно запостить такой вопрос, и чисто случайно наткнулся на куки флеша, чертовски удобная штука))

Покажу код класса который я нарыл для использования этих самых куков, заодно и код незатеряется)))


//Oleg Antipov
//http://www.blog.anegmetex.com

package  
{ 
    import flash.net.SharedObject;  
    
    public class Cookie 
    { 
        private var _name:String;
        private var _so:SharedObject;
        
        public function Cookie(name:String = "tempCookie") 
        { 
            _name = name;
            _so = SharedObject.getLocal(name, "/" );
            
        }

        // Получить имя cookie
        public function getName():String 
        { 
            return _name;
        } 
        // Удалить все элементы из cookie 
        public function clear():void 
        { 
            _so.clear();
        } 
        // добавить новое значение элементу 
        // key - имя элемента value - значение
        public function put(key:String, value:*):void 
        { 
            key = "key_"+key;
            if(_so.data.cookie == undefined)
            { 
                var obj:Object = {};
                obj[key] = value;
                _so.data.cookie = obj;
            }
            else 
            {
                _so.data.cookie[key] = value;
            }
                
            _so.flush();
        } 
        // удалить из cookie элемент по его названию 
        public function remove(key:String):void 
        { 
            if (isKeyExist(key)) 
            { 
                delete _so.data.cookie["key_" + key];
                _so.flush();
            } 
        } 
        // получить значение элемента с именем key
        public function get(key:String):Object
        {     
            return isKeyExist(key)?_so.data.cookie["key_"+key]:null;
        } 
        
        // проверить существования элемента с именем key
        public function isKeyExist(key:String):Boolean
        { 
            key = "key_" + key; 
            return _so.data.cookie != undefined && _so.data.cookie[key] != undefined;
        } 
        // проверить существует ли Cookie
        public function isExist():Boolean
        { 
            return !(getSize()==0);
        }     
        
        //Получить размер cookie в байтах
         public function getSize():uint 
        {
            return _so.size;
        }
    } 
}

Ну и в перерывах между программированием рисую арт, вот собственно что получается (так же сделал прелоадер)) пока правда без графики, но потом нарисую)

Ну пока все, следующее за что думаю взяться, - Box2d, т.к. игра планируеться в жанре "физический пазл".

8 комментариев:

  1. графика потрясная! жду-жду-жду продолжения)

    ОтветитьУдалить
    Ответы
    1. Спасибо большое, на самом деле над графикой мне очень трудно работать... я в голове вижу как оно должно быть, а руки крюки воплощать в жизнь нехотят))... анимацию и подавно... на даный момент стараюсь заанимировать ГГ(5-6 анимаций), что и стопорит разработку. Немогу я как-то делать прототип без арта.

      Удалить
  2. чума!
    ты нереально крут!
    я такое меню пару месяцев прогал, а ты за несколько вечеров сделал! молодец! успехов!

    ОтветитьУдалить
  3. Да, меню сразу приятное! заинтригован что будет в игре)

    ОтветитьУдалить
  4. Спасибо ребята, прям в краску вогнали) Надеюсь дальше будет нехуже.

    ОтветитьУдалить
    Ответы
    1. ни почты, ни аськи твоих не знаю, поэтому пишу сюда - авось посмотришь!
      как игра? продвигается? нетерпится увидеть геймплей! в любом случае желаю удачи, безумно надеюсь, что ты не забросил свое отличное творение!

      Удалить
    2. Спасибо, очень рад что заглядываешь в гости)
      Нет, игру незабросил, при изучении бокса увлекся чуток SoftBody.
      Буду рад если добавишь меня в аську 423340621

      Удалить
  5. Дошёл сейчас до продумывания сохранения данных в своей флешке, а значит как раз пригодится приведённый выше класс, попробую заюзать)

    ОтветитьУдалить