Changeset e30de42ceddfaa2a65587b454db364611a411c61

Show
Ignore:
Timestamp:
08/30/08 16:30:27 (3 months ago)
Author:
Christopher Jung <bktheg@web.de>
git-committer:
Christopher Jung <bktheg@web.de> 1220106627 +0200
git-parent:

[f9413816c2c0278590f15d7583f90020b22efd06]

git-author:
Simon Dietsch <rhonabwy@sternenbund.org> 1220106627 +0200
Message:

[gameplay] In Nebel kann hineingescannt werden. Abhaengig von der Dichte des Nebels und der Groesze der Schiffe sieht man mehr oder weniger.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • src/net/driftingsouls/ds2/server/modules/ScanController.java

    re409332 re30de42  
    213213                Nebel nebel = (Nebel)db.get(Nebel.class, new MutableLocation(scanLoc)); 
    214214                if( !this.admin && (nebel != null) && ((nebel.getType() < 3) || (nebel.getType() > 5)) ) { 
    215                         List nebelships = db.createQuery("from Ship where id>0 and x= :x and y= :y and system= :sys and owner= :owner and sensors>30)") 
     215                        /*List nebelships = db.createQuery("from Ship where id>0 and x= :x and y= :y and system= :sys and owner= :owner and sensors>30)") 
    216216                                .setInteger("x", scanLoc.getX()) 
    217217                                .setInteger("y", scanLoc.getY()) 
     
    228228                                        break; 
    229229                                } 
    230                         } 
     230                        }*/ 
     231                        // Wenn kein EMP-Nebel, dann kann man ihn scannen 
     232                        scanableNebel = true; 
    231233                } 
    232234                // Im Admin-Modus sind alle Nebel scanbar 
     
    410412                                } 
    411413                                 
    412                                 t.setVar(       "ship.id",                              ship.getId(), 
    413                                                         "ship.isown",                   (ship.getOwner().getId() == user.getId()), 
    414                                                         "ship.owner.id",                ship.getOwner().getId(), 
    415                                                         "ship.name",                    Common._plaintitle(ship.getName()), 
    416                                                         "ship.owner.name",              Common._title(ship.getOwner().getName()), 
    417                                                         "ship.ownerlink",               (ship.getOwner().getId() != user.getId()), 
    418                                                         "ship.battle",                  ship.getBattle() != null ? ship.getBattle().getId() : 0, 
    419                                                         "ship.type.name",               shiptype.getNickname(), 
    420                                                         "ship.type",                    ship.getType(), 
    421                                                         "ship.type.picture",    shiptype.getPicture() ); 
     414                                boolean scanable = false; 
     415                                if(nebel != null){ 
     416                                        int nebeltype = nebel.getType(); 
     417                                        if( nebeltype == 1 && shiptype.getSize() > 4 ) // leichter Deutnebel 
     418                                        { 
     419                                                scanable = true; 
     420                                        } 
     421                                        else if( nebeltype == 0 && shiptype.getSize() > 6 ) // mittlerer Deutnebel 
     422                                        { 
     423                                                scanable = true; 
     424                                        } 
     425                                        else if( nebeltype == 2 && shiptype.getSize() > 10 ) // schwerer Deutnebel 
     426                                        { 
     427                                                scanable = true; 
     428                                        } 
     429                                        else if( nebeltype == 6 && shiptype.getSize() > 8 ) // Schadensnebel 
     430                                        { 
     431                                                scanable = true; 
     432                                        } 
     433                                } 
     434                                else 
     435                                // kein nebel 
     436                                { 
     437                                        scanable = true; 
     438                                } 
     439                                 
     440                                if (scanable){ 
     441                                        t.setVar(       "ship.id",                              ship.getId(), 
     442                                                                "ship.isown",                   (ship.getOwner().getId() == user.getId()), 
     443                                                                "ship.owner.id",                ship.getOwner().getId(), 
     444                                                                "ship.name",                    Common._plaintitle(ship.getName()), 
     445                                                                "ship.owner.name",              Common._title(ship.getOwner().getName()), 
     446                                                                "ship.ownerlink",               (ship.getOwner().getId() != user.getId()), 
     447                                                                "ship.battle",                  ship.getBattle() != null ? ship.getBattle().getId() : 0, 
     448                                                                "ship.type.name",               shiptype.getNickname(), 
     449                                                                "ship.type",                    ship.getType(), 
     450                                                                "ship.type.picture",    shiptype.getPicture() ); 
     451                                } 
    422452         
    423453                                if( disableIFF ) { 
     
    514544                        } 
    515545                        shipmap.get(loc).add(ship); 
    516  
     546                                 
    517547                        if( (ship.getOwner().getId() == user.getId()) && (ship.getSensors()>30) && !ownshipmap.containsKey(loc) ) {                      
    518548                                if( ship.getCrew() >= st.getCrew()/4 ) { 
     
    606636         
    607637                                        // Nebel 
    608                                         if( nebelmap.containsKey(loc) &&  
     638                                        /*if( nebelmap.containsKey(loc) &&  
    609639                                                        (!ownshipmap.containsKey(loc) || ((nebelmap.get(loc) >= 3) && (nebelmap.get(loc) <= 5)) ) ) { 
    610640                                                t.setVar(       "map.image",            "fog"+nebelmap.get(loc)+"/fog"+nebelmap.get(loc), 
    611641                                                                        "map.image.name",       "Nebel" ); 
    612                                         }  
     642                                        } */ 
     643                                        if (nebelmap.containsKey(loc) && ((nebelmap.get(loc) >=3) && (nebelmap.get(loc) <= 5))) 
     644                                        { 
     645                                                t.setVar(       "map.image",            "fog"+nebelmap.get(loc)+"/fog"+nebelmap.get(loc), 
     646                                                                "map.image.name",       "Nebel" ); 
     647                                        } 
    613648                                        else { 
    614649                                                int own = 0; 
     
    640675                                                                } 
    641676                                                                else if( (myship.getOwner().getId() != user.getId()) && ( (user.getAlly() == null) || ((user.getAlly() != null) && (myship.getOwner().getAlly() != user.getAlly()) ) )  ) { 
    642                                                                         if( (myship.getDocked().length() == 0) || (myship.getDocked().charAt(0) != 'l') ) { 
     677                                                                        boolean scan = false; 
     678                                                                        if (nebelmap.containsKey(loc)) 
     679                                                                        { 
     680                                                                                if (nebelmap.get(loc) == 1 && myship.getTypeData().getSize() > 4) // leichter Deutnebel 
     681                                                                                { 
     682                                                                                        scan = true; 
     683                                                                                }else if (nebelmap.get(loc) == 0 && myship.getTypeData().getSize() > 6) // mittlerer Deutnebel 
     684                                                                                { 
     685                                                                                        scan = true; 
     686                                                                                }else if (nebelmap.get(loc) == 2 && myship.getTypeData().getSize() > 10) // schwerer Deutnebel 
     687                                                                                { 
     688                                                                                        scan = true; 
     689                                                                                }else if (nebelmap.get(loc) == 6 && myship.getTypeData().getSize() > 8) // Schadensnebel 
     690                                                                                { 
     691                                                                                        scan = true; 
     692                                                                                } 
     693                                                                        }else 
     694                                                                        { 
     695                                                                                scan = true; 
     696                                                                        } 
     697                                                                         
     698                                                                        if( ((myship.getDocked().length() == 0) || (myship.getDocked().charAt(0) != 'l')) && scan == true ) { 
    643699                                                                                if( enemy == 0 ) { 
    644700                                                                                        fleet[2] = "_fe";