# Java  Brauche Hilfe



## Creed7 (26. Nov 2011)

So ich habe alles im script geschrieben kann mir jemand sagen ob und wo da der Fehler sein kann ( script geht aber wie unten beschrieben ingnoriert er 2 "spawns"


```
package org.openaion.gameserver.services;

import org.openaion.gameserver.model.gameobjects.Monster;
import org.openaion.gameserver.model.group.PlayerGroup;
import org.openaion.gameserver.model.templates.spawn.SpawnTemplate;
import org.openaion.gameserver.spawn.SpawnEngine;
import org.openaion.gameserver.model.gameobjects.Npc;
import org.openaion.gameserver.model.gameobjects.VisibleObject;


//@author Degsx

public class TalocInstanceService
{
       
  protected VisibleObject					chests[];
	int mapId = 300190000;
	
	public void onGroupReward(Monster monster, PlayerGroup group)
	{
		if(monster.getObjectTemplate().getTemplateId() == 212008)
		{
			SpawnChest(group); //siehe zeile 74-93
		}
		
			        //flamesnsturm    FUNKIONIERT
        if(monster.getObjectTemplate().getTemplateId() == 212246) {
            
            group.setInstanceKills(group.getInstanceKills() + 1);
            
            if (group.getInstanceKills() == 1){
                SpawnTemplate spawn;
                spawn = SpawnEngine.getInstance().addNewSpawn(300190000, group.getGroupLeader().getInstanceId(), 216249, 272f, 333f, 1184f, (byte)7, 0, 0, true);
                SpawnEngine.getInstance().spawnObject(spawn, group.getGroupLeader().getInstanceId());
            }
    }
    
    	        //Erde --ERSCHEITN SPAWNT NCIHT
        if(monster.getObjectTemplate().getTemplateId() == 211999) {
            
            group.setInstanceKills(group.getInstanceKills() + 1);
            
            if (group.getInstanceKills() == 4){
                SpawnTemplate spawn;
                spawn = SpawnEngine.getInstance().addNewSpawn(300190000, group.getGroupLeader().getInstanceId(), 211908, 231f, 456f, 1124f, (byte)55, 0, 0, true);
                SpawnEngine.getInstance().spawnObject(spawn, group.getGroupLeader().getInstanceId());
            }
    }
 
     	        //Wind FUNKTIONIER ABER NACH 2 KILLS
        if(monster.getObjectTemplate().getTemplateId() == 211753) {
            
            group.setInstanceKills(group.getInstanceKills() + 1);
            
            if (group.getInstanceKills() == 3){
                SpawnTemplate spawn;
                spawn = SpawnEngine.getInstance().addNewSpawn(300190000, group.getGroupLeader().getInstanceId(), 212875, 163f, 721f, 1140f, (byte)7, 0, 0, true);
                SpawnEngine.getInstance().spawnObject(spawn, group.getGroupLeader().getInstanceId());
            }
    }
     	        //krateeer GEHT NICHT ( BEIM TEST AUF 4 UND KILLS 4 STELLEN ERSCHIEN ER
        if(monster.getObjectTemplate().getTemplateId() == 255664) {
            
            group.setInstanceKills(group.getInstanceKills() + 1);
            
            if (group.getInstanceKills() == 3){
                SpawnTemplate spawn;
                spawn = SpawnEngine.getInstance().addNewSpawn(300190000, group.getGroupLeader().getInstanceId(), 211715, 401f, 597f, 1178f, (byte)73, 0, 0, true);
                SpawnEngine.getInstance().spawnObject(spawn, group.getGroupLeader().getInstanceId());
            }
    }
	}
	
	public void SpawnChest(PlayerGroup group)
	{	
		chests = new VisibleObject[11];
		
		chests[0] = (Npc) InstanceService.addNewSpawn(mapId, group.getGroupLeader().getInstanceId(), 212246, (float) 268.508, (float) 353.197, (float) 1184.32, (byte) 94, true);
		
		chests[1] = (Npc) InstanceService.addNewSpawn(mapId, group.getGroupLeader().getInstanceId(), 211999, (float) 202.624, (float) 454.485, (float) 1125.63, (byte) 36, true);
		chests[2] = (Npc) InstanceService.addNewSpawn(mapId, group.getGroupLeader().getInstanceId(), 211999, (float) 219.103, (float) 454.877, (float) 1122.78, (byte) 50, true);
		chests[3] = (Npc) InstanceService.addNewSpawn(mapId, group.getGroupLeader().getInstanceId(), 211999, (float) 222.87, (float) 464.48, (float) 1123.08, (byte) 61, true);
		chests[4] = (Npc) InstanceService.addNewSpawn(mapId, group.getGroupLeader().getInstanceId(), 211999, (float) 215.307, (float) 466.796, (float) 1124.46, (byte) 81, true);
		
		chests[5] = (Npc) InstanceService.addNewSpawn(mapId, group.getGroupLeader().getInstanceId(), 211753, (float) 141.28905, (float) 729.43005, (float) 1140.3815, (byte) 96, true);
		chests[6] = (Npc) InstanceService.addNewSpawn(mapId, group.getGroupLeader().getInstanceId(), 211753, (float) 130.88841, (float) 680.37537, (float) 1140.3894, (byte) 13, true);
		chests[7] = (Npc) InstanceService.addNewSpawn(mapId, group.getGroupLeader().getInstanceId(), 211753, (float) 172.89714, (float) 686.7458, (float) 1139.879, (byte) 48, true);

		chests[8] = (Npc) InstanceService.addNewSpawn(mapId, group.getGroupLeader().getInstanceId(), 255664, (float) 370.787, (float) 604.087, (float) 1177.5, (byte) 88, true);
		chests[9] = (Npc) InstanceService.addNewSpawn(mapId, group.getGroupLeader().getInstanceId(), 255664, (float) 364.586, (float) 569.983, (float) 1175.8, (byte) 78, true);
		chests[10] = (Npc) InstanceService.addNewSpawn(mapId, group.getGroupLeader().getInstanceId(), 255664, (float) 373.324, (float) 558.679, (float) 1174.37, (byte) 59, true);

	}

    public static TalocInstanceService getInstance()
    {
        return SingletonHolder.instance;
    }
    
    @SuppressWarnings("synthetic-access")
    private static class SingletonHolder
    {
        protected static final TalocInstanceService instance = new TalocInstanceService();
    }
    
}
```


----------



## VfL_Freak (26. Nov 2011)

Moin,



Creed7 hat gesagt.:


> So ich habe alles im script geschrieben kann mir jemand sagen ob und wo da der Fehler sein kann (script geht aber wie unten beschrieben ingnoriert er 2 "spawns"



Script ???:L

Glaubst Du ernsthaft, dass sich hier jemand durch diesen kurios anmutenden und undokumentieren Code wühlt, um Dir zu sagen "_ob und wo da_" Fehler sein könnten ?? 

Vielleicht versuchst Du mal halbwegs verständlich zu erklären, was der Code machen soll - und dann was er nicht macht resp. wo genau Du welches Problem hast ! 

Gruß
Klaus


----------



## Noctarius (26. Nov 2011)

Ist halt aus dem AION Java Server


----------



## Tomate_Salat (26. Nov 2011)

Gelesen und ich hab keine Ahnung was du willst.


```
if(monster.getObjectTemplate().getTemplateId() == 211753)
```
solche Prüfungen sind hässlich. Gibt es für 211753 keine Konstante?


----------



## Noctarius (26. Nov 2011)

Nein, für sowas gibt es keine Konstanten, weil die Mobdaten in der Datenbank stehen. Ist auch an der Stelle nicht so tragisch, da es sich vermutlich um ein (per ScriptEngineManager) dynamisch kompiliertes Quest-Script handelt. Das ist genau für einen Zweck da und die MobIds ändern sich nicht, da der AION Client die ganzen Daten für die Mobs bereits beinhaltet (NCsoft ).

Nicht, dass ich mich mit sowas auskennen würde


----------



## Tomate_Salat (26. Nov 2011)

Noctarius hat gesagt.:


> Nicht, dass ich mich mit sowas auskennen würde



Schade, sonst hättest du hier echt nützliches Hintergrundwissen verbreiten können  :joke: scnr


----------

