Portal-Zone Gothic-Zone Gothic II-Zone Gothic 3-Zone Gothic 4-Zone Modifikationen-Zone Download-Zone Foren-Zone RPG-Zone Almanach-Zone Spirit of Gothic

 

Ergebnis 1 bis 11 von 11
  1. Beiträge anzeigen #1 Zitieren
    Aufseher 
    Registriert seit
    Feb 2008
    Beiträge
    5.310
     
    Earnur ist offline

    Array-Anzahl ändern (Spells machen)

    Hi, ich schon wieder.

    Ich habe vor einen neuen Teleportzauber zu erstellen. Hat soweit geklappt, nur dass ich beim anwählen der Rune einen Access-Violation-Absturz bekomme. Ich hab dann gemerkt dass ich die MAX_SPELLS nicht angehoben habe und hab dies nun getan.

    Code:
    ////////////////////////////////////////////////////////////////////////////////
    //
    //	Spells: ID-Konstanten
    //
    
    // Paladin-Runen
    CONST int SPL_PalLight				= 0;
    CONST int SPL_PalLightHeal			= 1;
    CONST int SPL_PalHolyBolt			= 2;
    CONST int SPL_PalMediumHeal			= 3;
    CONST int SPL_PalRepelEvil			= 4;
    CONST int SPL_PalFullHeal			= 5;
    CONST int SPL_PalDestroyEvil		= 6;
    
    // Teleport-Runen
    CONST int SPL_PalTeleportSecret		= 7;
    CONST int SPL_TeleportSeaport		= 8;
    CONST int SPL_TeleportMonastery		= 9;
    CONST int SPL_TeleportFarm			= 10;
    CONST int SPL_TeleportXardas		= 11;
    CONST int SPL_TeleportPassNW		= 12;
    CONST int SPL_TeleportPassOW		= 13;
    CONST int SPL_TeleportOC			= 14;
    CONST int SPL_TeleportOWDemonTower 	= 15;
    CONST int SPL_TeleportTaverne		= 16;
    CONST int SPL_Teleport_3			= 17;
    
    // Kreis 1
    CONST int SPL_Light 				= 18;
    CONST int SPL_Firebolt				= 19;
    
    // Kreis 2
    CONST int SPL_Icebolt				= 20;
    
    // Kreis 1
    CONST int SPL_LightHeal				= 21;		// SPL_Heal Instant!
    CONST int SPL_SummonGoblinSkeleton	= 22;
    
    // Kreis 2
    CONST int SPL_InstantFireball		= 23;
    
    // Kreis 1
    CONST int SPL_Zap					= 24; 		// ###UNCONSCIOUS###
    
    // Kreis 2
    CONST int SPL_SummonWolf			= 25;
    CONST int SPL_WindFist				= 26;		// ###UNCONSCIOUS###
    CONST int SPL_Sleep					= 27;
    
    // Kreis 3
    CONST int SPL_MediumHeal			= 28;
    CONST int SPL_LightningFlash		= 29;
    CONST int SPL_ChargeFireball		= 30;
    CONST int SPL_SummonSkeleton		= 31;
    CONST int SPL_Fear					= 32;
    CONST int SPL_IceCube				= 33;
    
    // Kreis 4
    CONST int SPL_ChargeZap				= 34;
    CONST int SPL_SummonGolem			= 35;
    CONST int SPL_DestroyUndead			= 36;
    CONST int SPL_Pyrokinesis			= 37;
    
    // Kreis 5
    CONST int SPL_Firestorm				= 38;
    CONST int SPL_IceWave				= 39;
    CONST int SPL_SummonDemon			= 40;
    CONST int SPL_FullHeal				= 41;
    
    // Kreis 6
    CONST int SPL_Firerain				= 42;
    CONST int SPL_BreathOfDeath			= 43;
    CONST int SPL_MassDeath				= 44;
    CONST int SPL_ArmyOfDarkness		= 45;
    CONST int SPL_Shrink				= 46;
    
    // Scrolls
    CONST int SPL_TrfSheep				= 47;
    CONST int SPL_TrfScavenger			= 48;
    CONST int SPL_TrfGiantRat			= 49;
    CONST int SPL_TrfGiantBug			= 50;
    CONST int SPL_TrfWolf				= 51;
    CONST int SPL_TrfWaran				= 52;
    CONST int SPL_TrfSnapper			= 53;
    CONST int SPL_TrfWarg				= 54;
    CONST int SPL_TrfFireWaran			= 55;
    CONST int SPL_TrfLurker				= 56;
    CONST int SPL_TrfShadowbeast		= 57;
    CONST int SPL_TrfDragonSnapper		= 58;
    CONST int SPL_Charm					= 59;	// MAX_SPELL (Gothic)
    
    // Kreis 5
    CONST int SPL_MasterOfDisaster		= 60;
    
    // ???
    CONST int SPL_Deathbolt				= 61;
    CONST int SPL_Deathball				= 62;
    CONST int SPL_ConcussionBolt		= 63;
    CONST int SPL_Reserved_64			= 64;	// SPL_E
    CONST int SPL_Reserved_65		    = 65;	// SPL_F
    CONST int SPL_Reserved_66	        = 66;	// SPL_G
    CONST int SPL_Reserved_67	        = 67;	// SPL_H
    CONST int SPL_Reserved_68			= 68;	// MAX_SPELL (Gothic2)
    CONST int SPL_Reserved_69			= 69;
    
    // Magick (Wasser)
    CONST int SPL_Thunderstorm			= 70;
    CONST int SPL_Whirlwind				= 71;
    CONST int SPL_WaterFist				= 72;
    CONST int SPL_IceLance				= 73;
    CONST int SPL_Inflate				= 74;
    CONST int SPL_Geyser				= 75;
    CONST int SPL_Waterwall				= 76;
    CONST int SPL_Reserved_77			= 77;
    CONST int SPL_Reserved_78			= 78;
    CONST int SPL_Reserved_79			= 79;
    
    // Magick (Maya)
    CONST int SPL_Plague				= 80;
    CONST int SPL_Swarm					= 81;
    CONST int SPL_GreenTentacle			= 82;
    CONST int SPL_Earthquake			= 83;
    CONST int SPL_SummonGuardian		= 84;
    CONST int SPL_Energyball			= 85;
    CONST int SPL_SuckEnergy			= 86;
    CONST int SPL_Skull					= 87;
    CONST int SPL_SummonZombie			= 88;
    CONST int SPL_SummonMud				= 89;
    
    // ...
    CONST int SPL_Reserved_90			= 90;
    CONST int SPL_Reserved_91			= 91;
    CONST int SPL_Reserved_92			= 92;
    CONST int SPL_Reserved_93			= 93;
    CONST int SPL_Reserved_94			= 94;
    CONST int SPL_Reserved_95			= 95;
    CONST int SPL_Reserved_96			= 96;
    CONST int SPL_Reserved_97			= 97;
    CONST int SPL_Reserved_98			= 98;
    CONST int SPL_Reserved_99			= 99;
    
    //Mod-Runen
    CONST int SPL_TeleportInselkloster	= 100;
    
    CONST int MAX_SPELL					= 101;		// 59 (Gothic), 68 (Gothic2), 100 (G2Addon)
    
    
    ////////////////////////////////////////////////////////////////////////////////
    //
    //	Spells: Fx-/Spell-Klassennamen (Array)
    //
    
    CONST string spellFxInstanceNames[MAX_SPELL] = 
    {
    	// Paladin-Runen
    	"PalLight",				// 0	SPL_PalLight
    	"PalHeal",  			// 1	SPL_PalLightHeal
    	"PalHolyBolt",  		// 2	SPL_PalHolyBolt
    	"PalHeal",  			// 3	SPL_PalMediumHeal
    	"PalRepelEvil",			// 4	SPL_PalRepelEvil
    	"PalHeal",  			// 5	SPL_PalFullHeal
    	"PalDestroyEvil",  		// 6	SPL_PalDestroyEvil
    
    	// Teleport-Runen
    	"Teleport",  			// 7	SPL_PalTeleportSecret
    	"Teleport",  			// 8	SPL_TeleportSeaport
    	"Teleport",  			// 9	SPL_TeleportMonastery
    	"Teleport",  			// 10	SPL_TeleportFarm
    	"Teleport",  			// 11	SPL_TeleportXardas
    	"Teleport",  			// 12	SPL_TeleportPassNW
    	"Teleport",  			// 13	SPL_TeleportPassOW
    	"Teleport",  			// 14	SPL_TeleportOC
    	"Teleport",  			// 15	SPL_TeleportOWDemonTower
    	"Teleport",  			// 16	SPL_TeleportTaverne
    	"Teleport",  			// 17	SPL_Teleport_3
    	
    	// Kreis 1
    	"Light",				// 18	SPL_Light
    	"Firebolt",				// 19	SPL_Firebolt
    
    	// Kreis 2
    	"Icebolt",				// 20	SPL_Icebolt
    
    	// Kreis 1
    	"Heal",  				// 21	SPL_LightHeal
    	"SummonGoblinSkeleton",	// 22	SPL_SummonGoblinSkeleton
    
    	// Kreis 2
    	"InstantFireball",  	// 23	SPL_InstantFireball
    
    	// Kreis 1
    	"Zap",					// 24	SPL_Zap
    
    	// Kreis 2
    	"SummonWolf",  			// 25	SPL_SummonWolf
    	"WindFist",  			// 26	SPL_WindFist
    	"Sleep",  				// 27	SPL_Sleep
    
    	// Kreis 3
    	"Heal",  				// 28	SPL_MediumHeal
    	"LightningFlash",		// 29	SPL_LightningFlash
    	"ChargeFireball",  		// 30	SPL_ChargeFireball
    	"SummonSkeleton",  		// 31	SPL_SummonSkeleton
    	"Fear",  				// 32	SPL_Fear
    	"Icecube",  			// 33	SPL_IceCube
    
    	// Kreis 4
    	"ChargeZap",  			// 34	SPL_ChargeZap
    	"SummonGolem",  		// 53	SPL_SummonGolem
    	"DestroyUndead",  		// 36	SPL_DestroyUndead
    	"Pyrokinesis",  		// 37	SPL_Pyrokinesis
    
    	// Kreis 5
    	"Firestorm", 			// 38	SPL_Firestorm
    	"Icewave",  			// 39	SPL_IceWave
    	"SummonDemon",  		// 40	SPL_SummonDemon
    	"Heal",  				// 41	SPL_FullHeal
    
    	// Kreis 6
    	"Firerain",  			// 42	SPL_Firerain
    	"BreathOfDeath",  		// 43	SPL_BreathOfDeath
    	"MassDeath",  			// 44	SPL_MassDeath
    	"ArmyOfDarkness", 		// 45	SPL_ArmyOfDarkness
    	"Shrink",  				// 46	SPL_Shrink
    
    	// Scrolls
    	"Transform",  			// 47	SPL_TrfSheep
    	"Transform",  			// 48	SPL_TrfScavenger
    	"Transform",  			// 49	SPL_TrfGiantRat
    	"Transform",  			// 50	SPL_TrfGiantBug
    	"Transform",  			// 51	SPL_TrfWolf
    	"Transform",  			// 52	SPL_TrfWaran
    	"Transform",  			// 53	SPL_TrfSnapper
    	"Transform",  			// 54	SPL_TrfWarg
    	"Transform",  			// 55	SPL_TrfFireWaran
    	"Transform",  			// 56	SPL_TrfLurker
    	"Transform",  			// 57	SPL_TrfShadowbeast
    	"Transform",  			// 58	SPL_TrfDragonSnapper
    	"Charm",				// 59	SPL_Charm
    
    	// Kreis 5
    	"MasterOfDisaster", 	// 60	SPL_MasterOfDisaster
    
    	// ???
    	"Deathbolt",  			// 61	SPL_Deathbolt
    	"Deathball", 			// 62	SPL_Deathball
    	"Concussionbolt", 		// 63	SPL_Concussionbolt
    	"Light",  				// 64	SPL_Reserved_64
    	"Light",  				// 65	SPL_Reserved_65
    	"Light",  				// 66	SPL_Reserved_66
    	"Light",				// 67	SPL_Reserved_67
    	"Light",				// 68	SPL_Reserved_68
    	"Light",				// 69	SPL_Reserved_69
    
    	// Magick (Wasser)
        "Thunderstorm",			// 70	SPL_Thunderstorm
    	"Whirlwind",			// 71	SPL_Whirlwind
    	"Waterfist",			// 72	SPL_WaterFist
    	"IceLance",				// 73	SPL_IceLance
    	"Sleep",				// 74	SPL_Inflate
    	"Geyser",				// 75	SPL_Geyser
    	"Firerain",				// 76	SPL_Waterwall
    	"Light",				// 77	SPL_Reserved_77
    	"Light",				// 78	SPL_Reserved_78
    	"Light",				// 79	SPL_Reserved_79
    
    	// Magick (Maya)
    	"Fear",					// 80	SPL_Plague
    	"Swarm",				// 81	SPL_Swarm
    	"Greententacle",		// 82	SPL_GreenTentacle
    	"Firerain",				// 83	SPL_Earthquake
    	"SummonGuardian",		// 84	SPL_SummonGuardian
    	"Energyball",			// 85	SPL_Energyball
    	"SuckEnergy",			// 86	SPL_SuckEnergy
    	"Skull",				// 87	SPL_Skull
    	"SummonZombie",			// 88	SPL_SummonZombie
    	"SummonMud",			// 89	SPL_SummonMud
    
    	// ...
    	"Light",				// 90	SPL_Reserved_90
    	"Light",				// 91	SPL_Reserved_91
    	"Light",				// 92	SPL_Reserved_92
    	"Light",				// 93	SPL_Reserved_93
    	"Light",				// 94	SPL_Reserved_94
    	"Light",				// 95	SPL_Reserved_95
    	"Light",				// 96	SPL_Reserved_96
    	"Light",				// 97	SPL_Reserved_97
    	"Light",				// 98	SPL_Reserved_98
    	"Light",				// 99	SPL_Reserved_99
    	
    	//Mod-Runen
    	"Teleport",  			// 100	SPL_TeleportInselkloster
    
    };
    
    
    ////////////////////////////////////////////////////////////////////////////////
    //
    //	Spells: Animationskürzel (Array)
    //
    
    CONST string spellFxAniLetters[MAX_SPELL] =
    {
    	// Paladin-Runen
    	"SLE",					// 0	 SPL_PalLight
    	"HEA",  				// 1	 SPL_PalLightHeal
    	"FBT",  				// 2	 SPL_PalHolyBolt
    	"HEA",  				// 3	 SPL_PalMediumHeal
    	"FBT",					// 4	 SPL_PalRepelEvil
    	"HEA",  				// 5	 SPL_PalFullHeal
    	"FIB",  				// 6	 SPL_PalDestroyEvil
    
    	// Teleport-Runen
    	"HEA",  				// 7	SPL_PalTeleportSecret
    	"HEA",  				// 8	SPL_TeleportSeaport
    	"HEA",  				// 9	SPL_TeleportMonastery
    	"HEA",  				// 10	SPL_TeleportFarm
    	"HEA",  				// 11	SPL_TeleportXardas
    	"HEA",  				// 12	SPL_TeleportPassNW
    	"HEA",  				// 13	SPL_TeleportPassOW
    	"HEA",  				// 14	SPL_TeleportOC
    	"HEA",  				// 15	SPL_TeleportOWDemonTower
    	"HEA",  				// 16	SPL_TeleportTaverne
    	"HEA",  				// 17	SPL_Teleport_3
    	
    	// Kreis 1
    	"SLE",					// 18	SPL_Light
    	"FBT",					// 19	SPL_Firebolt
    
    	// Kreis 2
    	"FBT",					// 20	SPL_Icebolt
    
    	// Kreis 1
    	"HEA",  				// 21	SPL_LightHeal
    	"SUM",  				// 22	SPL_SummonGoblinSkeleton
    
    	// Kreis 2
    	"FBT",  				// 23	SPL_InstantFireball
    
    	// Kreis 1
    	"FBT",					// 24	SPL_Zap
    
    	// Kreis 2
    	"SUM",  				// 25	SPL_SummonWolf
    	"WND",  				// 26	SPL_WindFist
    	"SLE",  				// 27	SPL_Sleep
    
    	// Kreis 3
    	"HEA",  				// 28	SPL_MediumHeal
    	"WND",  				// 29	SPL_LightningFlash
    	"FIB",  				// 30	SPL_ChargeFireball
    	"SUM",  				// 31	SPL_SummonSkeleton
    	"FEA",  				// 32	SPL_Fear
    	"FRZ",  				// 33	SPL_IceCube
    	"FIB",  				// 34	SPL_ChargeZap
    
    	// Kreis 4
    	"SUM",  				// 35	SPL_SummonGolem
    	"FIB",  				// 36	SPL_DestroyUndead
    	"FIB",  				// 37	SPL_Pyrokinesis
    
    	// Kreis 5
    	"FIB",  				// 38	SPL_Firestorm
    	"FEA",  				// 39	SPL_IceWave
    	"SUM",  				// 40	SPL_SummonDemon
    	"HEA",  				// 41	SPL_FullHeal
    
    	// Kreis 6
    	"FEA",  				// 42	SPL_Firerain
    	"FIB",  				// 43	SPL_BreathOfDeath
    	"MSD",  				// 44	SPL_MassDeath
    	"SUM",  				// 45	SPL_ArmyOfDarkness
    	"SLE",  				// 46	SPL_Shrink
    
    	// Scrolls
    	"TRF",  				// 47	SPL_TrfSheep
    	"TRF",  				// 48	SPL_TrfScavenger
    	"TRF",  				// 49	SPL_TrfGiantRat
    	"TRF",  				// 50	SPL_TrfGiantBug
    	"TRF",  				// 51	SPL_TrfWolf
    	"TRF",  				// 52	SPL_TrfWaran
    	"TRF",  				// 53	SPL_TrfSnapper
    	"TRF",  				// 54	SPL_TrfWarg
    	"TRF",  				// 55	SPL_TrfFireWaran
    	"TRF",  				// 56	SPL_TrfLurker
    	"TRF",  				// 57	SPL_TrfShadowbeast
    	"TRF",  				// 58	SPL_TrfDragonSnapper
    	"FIB",					// 59	SPL_Charm
    
    	// Kreis 5
    	"FIB",  				// 60	SPL_MasterOfDisaster
    
    	// ???
    	"FBT",  				// 61	SPL_Deathbolt
    	"FBT",  				// 62	SPL_Deathball
    	"FBT",  				// 63	SPL_Concussionbolt
    	"XXX",  				// 64	SPL_Reserved_64
    	"XXX",  				// 65	SPL_Reserved_65
    	"XXX",  				// 66	SPL_Reserved_66
    	"XXX",					// 67	SPL_Reserved_67
     	"XXX",					// 68	SPL_Reserved_68
    	"XXX",					// 69	SPL_Reserved_69
    
    	// Magick (Wasser)
    	"STM",  				// 70	SPL_Thunderstorm
    	"WHI",  				// 71	SPL_Whirlwind		
    	"WND",  				// 72	SPL_WaterFist
    	"FBT",  				// 73	SPL_IceLance
    	"SLE",  				// 74	SPL_Inflate			
    	"WND",  				// 75	SPL_Geyser			
    	"FEA",  				// 76	SPL_Waterwall
    	"XXX",					// 77	SPL_Reserved_77
    	"XXX",					// 78	SPL_Reserved_78
    	"XXX",					// 79	SPL_Reserved_79
    
    	// Magick (Maya)
    	"FBT",  				// 80	SPL_Plague
    	"FBT",  				// 81	SPL_Swarm			
    	"FRZ",  				// 82	SPL_GreenTentacle
    	"FEA",  				// 83	SPL_Earthquake
    	"SUM",  				// 84	SPL_SummonGuardian
    	"WND",  				// 85	SPL_Energyball
    	"WND",  				// 86	SPL_SuckEnergy
    	"WND",					// 87	SPL_Skull
    	"SUM",					// 88	SPL_SummonZombie	
    	"SUM",					// 89	SPL_SummonMud
    
    	// ...
    	"XXX",  				// 90	SPL_Reserved_90
    	"XXX",  				// 91	SPL_Reserved_91
    	"XXX",  				// 92	SPL_Reserved_92
    	"XXX",  				// 93	SPL_Reserved_93
    	"XXX",  				// 94	SPL_Reserved_94
    	"XXX",  				// 95	SPL_Reserved_95
    	"XXX",  				// 96	SPL_Reserved_96
    	"XXX",					// 97	SPL_Reserved_97
    	"XXX",					// 98	SPL_Reserved_98
    	"XXX",					// 99	SPL_Reserved_99
    	
    	//Modrunen
    	"HEA",  				// 100	SPL_TeleportInselkloster
    };
    Ich bekomm trotz keinem augenscheinlichen Fehler (ich hab wirklich eine Stunde diesen Fehler gesucht) eine simple Zeichenfehlermeldung: Expected '}' (line 796. Hab die Zeile markiert (rot), aber da ist kein Zeichenfehler. Auch im drumherum der drei Sparten ist nichts. Wieso bekomme ich diesen verfluchten simplen Fehler?

  2. Beiträge anzeigen #2 Zitieren
    now also in your universe  Avatar von Milky-Way
    Registriert seit
    Jun 2007
    Beiträge
    15.378
     
    Milky-Way ist offline
    Man kann nicht einfach zusätzliche Zauber einfügen, das ist nunmal nicht möglich. Daher erwartet Gothic auch, dass nach der maximalen Anzahl die Funktion mit } geschlossen wird, bei Dir ist dort aber noch eine zusätzliche Zeile.

  3. Beiträge anzeigen #3 Zitieren
    Aufseher 
    Registriert seit
    Feb 2008
    Beiträge
    5.310
     
    Earnur ist offline
    Zitat Zitat von Milky-Way Beitrag anzeigen
    Man kann nicht einfach zusätzliche Zauber einfügen, das ist nunmal nicht möglich. Daher erwartet Gothic auch, dass nach der maximalen Anzahl die Funktion mit } geschlossen wird, bei Dir ist dort aber noch eine zusätzliche Zeile.
    Wie es ist nicht möglich? Heißt das man kann keine neuen Zauber einfügen sondern muss vorhandene editieren?

  4. Beiträge anzeigen #4 Zitieren
    Dea
    Registriert seit
    Jul 2007
    Beiträge
    10.468
     
    Lehona ist offline
    Code:
    CONST int SPL_Reserved_90			= 90;
    CONST int SPL_Reserved_91			= 91;
    CONST int SPL_Reserved_92			= 92;
    CONST int SPL_Reserved_93			= 93;
    CONST int SPL_Reserved_94			= 94;
    CONST int SPL_Reserved_95			= 95;
    CONST int SPL_Reserved_96			= 96;
    CONST int SPL_Reserved_97			= 97;
    CONST int SPL_Reserved_98			= 98;
    CONST int SPL_Reserved_99			= 99;
    Die scheinen für neue Zauber da zu sein...

  5. Beiträge anzeigen #5 Zitieren
    Aufseher 
    Registriert seit
    Feb 2008
    Beiträge
    5.310
     
    Earnur ist offline
    Zitat Zitat von Lehona Beitrag anzeigen
    Code:
    CONST int SPL_Reserved_90			= 90;
    CONST int SPL_Reserved_91			= 91;
    CONST int SPL_Reserved_92			= 92;
    CONST int SPL_Reserved_93			= 93;
    CONST int SPL_Reserved_94			= 94;
    CONST int SPL_Reserved_95			= 95;
    CONST int SPL_Reserved_96			= 96;
    CONST int SPL_Reserved_97			= 97;
    CONST int SPL_Reserved_98			= 98;
    CONST int SPL_Reserved_99			= 99;
    Die scheinen für neue Zauber da zu sein...
    Ja, sieht so aus.. Jetzt wird mir das auch klar. Hab keine Ahnung von Arrays und hab noch nie neue Zauber erstellt.. Ich werds jetzt nochmal probieren. Danke schonmal bis hier, ich wär da eben nich weitergekommen.

  6. Beiträge anzeigen #6 Zitieren
    Aufseher 
    Registriert seit
    Feb 2008
    Beiträge
    5.310
     
    Earnur ist offline
    Ja, jetzt kann ich die Teleportrune auch anlegen. Nur benutzen geht nicht, der Hero zuckt beim casten einfach mit den Schultern als hätte er kein Mana mehr (am Mana liegts nicht, habs per Marvin getestet). Hier mal die gesamten Scripts zu dem Teleportzauber:

    Code:
    INSTANCE ItRu_TeleportInselkloster (C_Item) 
    {
    	name 				=	NAME_Rune;
    
    	mainflag 			=	ITEM_KAT_RUNE;
    	flags 				=	0;
    	
    	value				=	Value_Ru_TeleportCloister;
    	
    	visual				=	"ItRu_TeleportXardas.3ds";	
    	material			=	MAT_STONE;
    
    	spell				= 	SPL_Reserved_90;
    
    
    	wear				= 	WEAR_EFFECT;
    	effect				=	"SPELLFX_WEAKGLIMMER";
    
    	description			= 	NAME_SPL_TeleportCloister;
    	
    	TEXT	[1]			=	NAME_Manakosten;			
    	COUNT	[1]			=	SPL_COST_TELEPORT;
    	TEXT	[5]			=	NAME_Value;					
    	COUNT	[5]			=	value;
    };
    Code:
    // ------ zum Kloster ------
    FUNC int Spell_Logic_TeleportInselkloster (VAR int manaInvested)
    {
    	IF (Npc_GetActiveSpellIsScroll(self) && (self.attribute[ATR_MANA] >= SPL_Cost_Scroll))
    	{
    		RETURN SPL_SENDCAST;
    	}
    	ELSE IF (self.attribute[ATR_MANA] >= SPL_Cost_Teleport)
    	{
    		RETURN SPL_SENDCAST;
    	};
    	
    	RETURN SPL_NEXTLEVEL;
    };
    
    FUNC void Spell_Cast_TeleportInselkloster()
    {
    	B_PrintTeleportTooFarAway (NEWWORLD_ZEN);
    	
    	IF (Npc_GetActiveSpellIsScroll(self))
    	{
    		self.attribute[ATR_MANA] = self.attribute[ATR_MANA] - SPL_Cost_Scroll;
    	}
    	ELSE
    	{
    		self.attribute[ATR_MANA] = self.attribute[ATR_MANA] - SPL_Cost_Teleport;
    	};
    
    	AI_Teleport		(self, "KLOSTER_BANNKREIS");
    	AI_PlayAni		(self, "T_HEASHOOT_2_STAND" );
    };
    Code:
    // ----- neu 1.21 Verteiler für die Cast-Funcs -------
    FUNC void Spell_Cast_Teleport()
    {
    	IF (Npc_GetActiveSpell(self) == SPL_PalTeleportSecret	)	{	Spell_Cast_PalTeleportSecret	(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportSeaport		)	{	Spell_Cast_TeleportSeaport		(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportMonastery	)	{	Spell_Cast_TeleportMonastery	(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportFarm		)	{	Spell_Cast_TeleportFarm			(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportXardas		)	{	Spell_Cast_TeleportXardas		(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportPassNW		)	{	Spell_Cast_TeleportPassNW		(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportPassOW		)	{	Spell_Cast_TeleportPassOW		(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportOC			)	{	Spell_Cast_TeleportOC			(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportOWDemonTower)	{	Spell_Cast_TeleportOWDemonTower (); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportTaverne		)	{	Spell_Cast_TeleportTaverne		(); };
    	IF (Npc_GetActiveSpell(self) == SPL_Reserved_90			)	{	Spell_Cast_TeleportInselkloster	(); };
    //	if (Npc_GetActiveSpell(self) == SPL_Teleport_3			)	{	Spell_Cast_XXX					(); };
    
    };
    Bitte sagt falls was fehlt, bin auf dem Gebiet Spells ein absoluter Anfänger.
    Danke bis hier schonmal.

  7. Homepage besuchen Beiträge anzeigen #7 Zitieren
    Exodus Avatar von Sektenspinner
    Registriert seit
    Jul 2004
    Ort
    Karlsruhe
    Beiträge
    7.827
     
    Sektenspinner ist offline
    Zitat Zitat von Milky-Way Beitrag anzeigen
    Man kann nicht einfach zusätzliche Zauber einfügen, das ist nunmal nicht möglich. Daher erwartet Gothic auch, dass nach der maximalen Anzahl die Funktion mit } geschlossen wird, bei Dir ist dort aber noch eine zusätzliche Zeile.
    Falsch. Man kann sehr wohl neue Zauber hinzufügen.
    Der Fehler im Eröffnungspost ist lediglich das überflüssige ",".
    Für Spieler:
    Velaya # Velaya in English # Exodus Demo # Irrwichtel
    Tools für Modder:
    DiaDepp # DOPA-PARTER # zSlang
    Scripte für Modder:
    Ikarus Skriptpaket # Floats # Broadcasts

  8. Beiträge anzeigen #8 Zitieren
    now also in your universe  Avatar von Milky-Way
    Registriert seit
    Jun 2007
    Beiträge
    15.378
     
    Milky-Way ist offline
    Zitat Zitat von Sektenspinner Beitrag anzeigen
    Falsch. Man kann sehr wohl neue Zauber hinzufügen.
    Der Fehler im Eröffnungspost ist lediglich das überflüssige ",".
    Meiner Erfahrung nach funktionieren solche Array-Erweiterungen aber nicht

  9. Homepage besuchen Beiträge anzeigen #9 Zitieren
    Exodus Avatar von Sektenspinner
    Registriert seit
    Jul 2004
    Ort
    Karlsruhe
    Beiträge
    7.827
     
    Sektenspinner ist offline
    Zitat Zitat von Milky-Way Beitrag anzeigen
    Meiner Erfahrung nach funktionieren solche Array-Erweiterungen aber nicht
    Meine Zauber gehen bis 114 und gehen alle. Es gibt Konstanten die man nicht anpassen kann. MAX_SPELL gehört nicht dazu.

    Zumindest mit der G2 Reportversion. Ich weiß nicht ob es auf anderen Plattformen geht.
    Für Spieler:
    Velaya # Velaya in English # Exodus Demo # Irrwichtel
    Tools für Modder:
    DiaDepp # DOPA-PARTER # zSlang
    Scripte für Modder:
    Ikarus Skriptpaket # Floats # Broadcasts
    Geändert von Sektenspinner (25.05.2010 um 20:31 Uhr)

  10. Beiträge anzeigen #10 Zitieren
    Aufseher 
    Registriert seit
    Feb 2008
    Beiträge
    5.310
     
    Earnur ist offline
    Zitat Zitat von Earnur Beitrag anzeigen
    Ja, jetzt kann ich die Teleportrune auch anlegen. Nur benutzen geht nicht, der Hero zuckt beim casten einfach mit den Schultern als hätte er kein Mana mehr (am Mana liegts nicht, habs per Marvin getestet). Hier mal die gesamten Scripts zu dem Teleportzauber:

    Code:
    INSTANCE ItRu_TeleportInselkloster (C_Item) 
    {
    	name 				=	NAME_Rune;
    
    	mainflag 			=	ITEM_KAT_RUNE;
    	flags 				=	0;
    	
    	value				=	Value_Ru_TeleportCloister;
    	
    	visual				=	"ItRu_TeleportXardas.3ds";	
    	material			=	MAT_STONE;
    
    	spell				= 	SPL_Reserved_90;
    
    
    	wear				= 	WEAR_EFFECT;
    	effect				=	"SPELLFX_WEAKGLIMMER";
    
    	description			= 	NAME_SPL_TeleportCloister;
    	
    	TEXT	[1]			=	NAME_Manakosten;			
    	COUNT	[1]			=	SPL_COST_TELEPORT;
    	TEXT	[5]			=	NAME_Value;					
    	COUNT	[5]			=	value;
    };
    Code:
    // ------ zum Kloster ------
    FUNC int Spell_Logic_TeleportInselkloster (VAR int manaInvested)
    {
    	IF (Npc_GetActiveSpellIsScroll(self) && (self.attribute[ATR_MANA] >= SPL_Cost_Scroll))
    	{
    		RETURN SPL_SENDCAST;
    	}
    	ELSE IF (self.attribute[ATR_MANA] >= SPL_Cost_Teleport)
    	{
    		RETURN SPL_SENDCAST;
    	};
    	
    	RETURN SPL_NEXTLEVEL;
    };
    
    FUNC void Spell_Cast_TeleportInselkloster()
    {
    	B_PrintTeleportTooFarAway (NEWWORLD_ZEN);
    	
    	IF (Npc_GetActiveSpellIsScroll(self))
    	{
    		self.attribute[ATR_MANA] = self.attribute[ATR_MANA] - SPL_Cost_Scroll;
    	}
    	ELSE
    	{
    		self.attribute[ATR_MANA] = self.attribute[ATR_MANA] - SPL_Cost_Teleport;
    	};
    
    	AI_Teleport		(self, "KLOSTER_BANNKREIS");
    	AI_PlayAni		(self, "T_HEASHOOT_2_STAND" );
    };
    Code:
    // ----- neu 1.21 Verteiler für die Cast-Funcs -------
    FUNC void Spell_Cast_Teleport()
    {
    	IF (Npc_GetActiveSpell(self) == SPL_PalTeleportSecret	)	{	Spell_Cast_PalTeleportSecret	(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportSeaport		)	{	Spell_Cast_TeleportSeaport		(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportMonastery	)	{	Spell_Cast_TeleportMonastery	(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportFarm		)	{	Spell_Cast_TeleportFarm			(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportXardas		)	{	Spell_Cast_TeleportXardas		(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportPassNW		)	{	Spell_Cast_TeleportPassNW		(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportPassOW		)	{	Spell_Cast_TeleportPassOW		(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportOC			)	{	Spell_Cast_TeleportOC			(); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportOWDemonTower)	{	Spell_Cast_TeleportOWDemonTower (); };
    	IF (Npc_GetActiveSpell(self) == SPL_TeleportTaverne		)	{	Spell_Cast_TeleportTaverne		(); };
    	IF (Npc_GetActiveSpell(self) == SPL_Reserved_90			)	{	Spell_Cast_TeleportInselkloster	(); };
    //	if (Npc_GetActiveSpell(self) == SPL_Teleport_3			)	{	Spell_Cast_XXX					(); };
    
    };
    Bitte sagt falls was fehlt, bin auf dem Gebiet Spells ein absoluter Anfänger.
    Danke bis hier schonmal.
    Ja ich buddel hier einfach mal ein bisschen. Ich hab das Problem dort damals gelöst bekommen - bloß keine Ahnung mehr wie. Nun hab ich ne neue Teleportrune in der Mache und exakt das selbe Problem, nur keine Idee wie ichs lösen kann. Weiß jemand zufällig was der Fehler beim o.g. Zitat war?

    Danke im Voraus

  11. Beiträge anzeigen #11 Zitieren
    research Avatar von NicoDE
    Registriert seit
    Dec 2004
    Beiträge
    7.411
     
    NicoDE ist offline
    _work\data\Scripts\Content\AI\Magic\Spell_ProcessMana.d wurde auch erweitert?

    ps: Versuche es zuerst mit dem vorgesehenen ItRu_Teleport_3 (SPL_Teleport_3), bevor du eine andere ID verwendest (vielleicht ist der Bereich der Teleports von der Engine eigeschränkt).
    Geändert von NicoDE (14.06.2011 um 14:31 Uhr)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
Impressum | Link Us | intern
World of Gothic © by World of Gothic Team
Gothic, Gothic 2 & Gothic 3 are © by Piranha Bytes & Egmont Interactive & JoWooD Productions AG, all rights reserved worldwide