diff options
author | uruk | 2014-05-13 07:46:13 +0200 |
---|---|---|
committer | uruk | 2014-05-13 07:46:13 +0200 |
commit | 18182d5d2b75a42ff453aaa9ad6f60eb54bc898c (patch) | |
tree | 36b5a7f06ba84a0faf7019a1bad56fcaa6e36f6b | |
parent | 49d78527922f65c400056f0b4f98c26ee9d3a9c5 (diff) | |
download | scummvm-rg350-18182d5d2b75a42ff453aaa9ad6f60eb54bc898c.tar.gz scummvm-rg350-18182d5d2b75a42ff453aaa9ad6f60eb54bc898c.tar.bz2 scummvm-rg350-18182d5d2b75a42ff453aaa9ad6f60eb54bc898c.zip |
CGE2: Spare: store pointers instead of objects.
-rw-r--r-- | engines/cge2/spare.cpp | 12 | ||||
-rw-r--r-- | engines/cge2/spare.h | 2 |
2 files changed, 7 insertions, 7 deletions
diff --git a/engines/cge2/spare.cpp b/engines/cge2/spare.cpp index c1e536ac01..9a50f51900 100644 --- a/engines/cge2/spare.cpp +++ b/engines/cge2/spare.cpp @@ -41,8 +41,8 @@ Spare::Spare(CGE2Engine *vm) : _vm(vm) {} Sprite *Spare::take(int ref) { for (int i = 0; i < _container.size(); i++) { - if (_container[i]._ref == ref) { - return &_container[i]; + if (_container[i]->_ref == ref) { + return _container[i]; } } return nullptr; @@ -55,7 +55,7 @@ void Spare::takeCave(int cav) { } void Spare::make(Sprite *spr) { - _container.insert_at(_container.size(), *spr); + _container.insert_at(_container.size(), spr); } void Spare::dispose(Sprite *spr) { @@ -65,7 +65,7 @@ void Spare::dispose(Sprite *spr) { _vm->_vga->_showQ->remove(spr); for (int i = 0; i < _container.size(); i++) { - if (spr == &_container[i]) { + if (spr == _container[i]) { _container.remove_at(i); } } @@ -78,8 +78,8 @@ void Spare::dispose(int ref) { void Spare::dispose() { for (int i = 0; i < _container.size(); i++) { - if (_container[i]._ref > 255) { - dispose(&_container[i]); + if (_container[i]->_ref > 255) { + dispose(_container[i]); } } } diff --git a/engines/cge2/spare.h b/engines/cge2/spare.h index 8cfb65b905..3fc7ecfc94 100644 --- a/engines/cge2/spare.h +++ b/engines/cge2/spare.h @@ -34,7 +34,7 @@ namespace CGE2 { class Spare { CGE2Engine *_vm; - Common::Array<Sprite> _container; + Common::Array<Sprite*> _container; public: void make(Sprite *spr); Spare(CGE2Engine *vm); |