Changeset c5d039ae408ffbfb7eb82de712e25e6724fb0bb7
- Timestamp:
- 07/07/07 14:34:52
(1 year ago)
- Author:
- Christopher Jung <bktheg@web.de>
- git-committer:
- Christopher Jung <bktheg@web.de> 1183811692 +0200
- git-parent:
[569d06fe019225462e036d5630eb12725c956df4]
- git-author:
- Christopher Jung <bktheg@web.de> 1183811692 +0200
- Message:
Der Itemeffekt Ammo gibt nun direkt das Ammoobjekt zurueck
-
Files:
-
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
| r578ea8a |
rc5d039a |
|
| 591 | 591 | if( item.getEffect().getType() != ItemEffect.Type.AMMO ) continue; |
|---|
| 592 | 592 | |
|---|
| 593 | | final Ammo ammo = (Ammo)db.get(Ammo.class, ((IEAmmo)item.getEffect()).getAmmoID()); |
|---|
| | 593 | final Ammo ammo = ((IEAmmo)item.getEffect()).getAmmo(); |
|---|
| 594 | 594 | |
|---|
| 595 | 595 | if( !ammolist.contains(ammo) ) { |
|---|
| rb9a976a |
rc5d039a |
|
| 46 | 46 | |
|---|
| 47 | 47 | /** |
|---|
| 48 | | * Gibt die ID des zugehoerigen Ammo-Datenbankeintrags zurueck |
|---|
| 49 | | * @return Die Ammo-ID |
|---|
| | 48 | * Gibt die zugehoerigen Ammodaten zurueck |
|---|
| | 49 | * @return Die Ammodaten |
|---|
| 50 | 50 | */ |
|---|
| 51 | | public int getAmmoID() { |
|---|
| 52 | | return ammoId; |
|---|
| | 51 | public Ammo getAmmo() { |
|---|
| | 52 | org.hibernate.Session db = ContextMap.getContext().getDB(); |
|---|
| | 53 | return (Ammo)db.get(Ammo.class, this.ammoId); |
|---|
| 53 | 54 | } |
|---|
| 54 | 55 | |
|---|
| r283e6c7 |
rc5d039a |
|
| 554 | 554 | IEAmmo effect = (IEAmmo)Items.get().item(itemid).getEffect(); |
|---|
| 555 | 555 | |
|---|
| 556 | | Ammo ammo = (Ammo)getDB().get(Ammo.class, effect.getAmmoID()); |
|---|
| | 556 | Ammo ammo = effect.getAmmo(); |
|---|
| 557 | 557 | |
|---|
| 558 | 558 | if( ammo == null ) { |
|---|
| r0d2a340 |
rc5d039a |
|
| 647 | 647 | } |
|---|
| 648 | 648 | else { |
|---|
| 649 | | List<Integer> ammoids = new ArrayList<Integer>(); |
|---|
| 650 | | |
|---|
| 651 | 649 | itemlist = mycargo.getItemsWithEffect( ItemEffect.Type.AMMO ); |
|---|
| 652 | 650 | for( int i=0; i < itemlist.size(); i++ ) { |
|---|
| 653 | 651 | IEAmmo effect = (IEAmmo)itemlist.get(i).getItemEffect(); |
|---|
| 654 | | ammoids.add(effect.getAmmoID()); |
|---|
| 655 | | } |
|---|
| 656 | | |
|---|
| 657 | | if( ammoids.size() == 0 ) { |
|---|
| | 652 | |
|---|
| | 653 | if( Common.inArray(effect.getAmmo().getType(), this.weapon.getAmmoType()) ) { |
|---|
| | 654 | ammo = effect.getAmmo(); |
|---|
| | 655 | break; |
|---|
| | 656 | } |
|---|
| | 657 | } |
|---|
| | 658 | |
|---|
| | 659 | if( ammo == null ) { |
|---|
| 658 | 660 | battle.logme( "Sie verfügen über keine Munition\n" ); |
|---|
| 659 | 661 | return null; |
|---|
| 660 | 662 | } |
|---|
| 661 | | |
|---|
| 662 | | ammo = (Ammo)context.getDB().createQuery("from Ammo " + |
|---|
| 663 | | "where type in ('"+Common.implode("','", this.weapon.getAmmoType())+"') and id in ("+Common.implode(",",ammoids)+")") |
|---|
| 664 | | .iterate().next(); |
|---|
| 665 | 663 | } |
|---|
| 666 | 664 | |
|---|
| … | … | |
| 673 | 671 | for( int i=0; i < itemlist.size(); i++ ) { |
|---|
| 674 | 672 | IEAmmo effect = (IEAmmo)itemlist.get(i).getItemEffect(); |
|---|
| 675 | | if( effect.getAmmoID() == ammo.getId() ) { |
|---|
| | 673 | if( effect.getAmmo() == ammo ) { |
|---|
| 676 | 674 | ammoitem = itemlist.get(i); |
|---|
| 677 | 675 | } |
|---|
| rd538a03 |
rc5d039a |
|
| 281 | 281 | Item itemobject = item.getItemObject(); |
|---|
| 282 | 282 | |
|---|
| 283 | | if( ammoids.contains(effect.getAmmoID()) ) { |
|---|
| | 283 | if( ammoids.contains(effect.getAmmo().getId()) ) { |
|---|
| 284 | 284 | menuEntry(itemobject.getName(), "ship", ownShip.getId(), |
|---|
| 285 | 285 | "attack", enemyShip.getId(), |
|---|