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 4 von 4
  1. Homepage besuchen Beiträge anzeigen #1 Zitieren
    Team Velen
    Registriert seit
    Aug 2015
    Beiträge
    952
     
    Bloodfly91 ist offline

    Name der verwendeten Munition anzeigen lassen

    Hallo,
    ich würde gerne per PrintScreen für einige Sekunden den Itemnamen der verwendeten Munition einer Armbrust bzw. eines Bogens anzeigen lassen, sobald der Spieler eine/n zieht.
    Das ganze wollte ich so machen:

    Code:
    var string UsedAmmo;
    
    UsedAmmo = ConcatStrings ("Verwendete Geschosse: ",XXX);
                    
    Print_Ext(150, 7700, UsedAmmo, FONT_SCREENSMALL, COL_Red, 5000);
    Allerdings weiß ich nicht genau, was ich da als zweiten String angeben muss, damit auch der Name vom verwendeten Pfeil angezeigt wird...

  2. Beiträge anzeigen #2 Zitieren
    Ehrengarde Avatar von mud-freak
    Registriert seit
    Dec 2005
    Beiträge
    2.199
     
    mud-freak ist offline
    Versuch es mal mit
    Code:
    var string XXX; XXX = MEM_ReadString(MEM_GetSymbolByIndex(weapon.munition));
    Wobei weapon die entsprechende Waffeninstanz ist.

  3. Beiträge anzeigen #3 Zitieren
    Knight
    Registriert seit
    Aug 2009
    Ort
    Hessen
    Beiträge
    1.487
     
    Cryp18Struct ist offline
    Da bekommt man dann sowas wie ITRW_ARROW.
    Um an den eigentlichen Namen ranzukommen würde ich mit der Instanz ein item erzeugen und dort auf die Werte zugreifen.
    LeGo hat dafür den ItemHelper (Item_GetPtr).

    Code:
    			var c_item weapon;
    			
    			if(Npc_HasReadiedRangedWeapon(hero)){
    				weapon = Npc_GetReadiedWeapon(hero);
    			}else{
    				weapon = Npc_GetEquippedRangedWeapon(hero);
    			};
    			
    			if(Hlp_IsValidItem(weapon)){
    				var int arrowPtr;
    				arrowPtr = Itm_GetPtr(weapon.munition);
    				var ocItem ocArrow;
    				ocArrow = MEM_PtrToInst(arrowPtr);
    				
    				print(ocArrow.name);
    				
    			};

  4. Homepage besuchen Beiträge anzeigen #4 Zitieren
    Team Velen
    Registriert seit
    Aug 2015
    Beiträge
    952
     
    Bloodfly91 ist offline
    Zitat Zitat von mud-freak Beitrag anzeigen
    Versuch es mal mit
    Code:
    var string XXX; XXX = MEM_ReadString(MEM_GetSymbolByIndex(weapon.munition));
    Wobei weapon die entsprechende Waffeninstanz ist.
    Vielen Dank, das zeigt aber nur die Instanz vom Pfeil an. Ich würde gerne direkt den Namen anzeigen lassen, z.B. "Eisenpfeil".

    Zitat Zitat von Cryp18Struct Beitrag anzeigen
    Da bekommt man dann sowas wie ITRW_ARROW.
    Um an den eigentlichen Namen ranzukommen würde ich mit der Instanz ein item erzeugen und dort auf die Werte zugreifen.
    LeGo hat dafür den ItemHelper (Item_GetPtr).

    Code:
                var c_item weapon;
                
                if(Npc_HasReadiedRangedWeapon(hero)){
                    weapon = Npc_GetReadiedWeapon(hero);
                }else{
                    weapon = Npc_GetEquippedRangedWeapon(hero);
                };
                
                if(Hlp_IsValidItem(weapon)){
                    var int arrowPtr;
                    arrowPtr = Itm_GetPtr(weapon.munition);
                    var ocItem ocArrow;
                    ocArrow = MEM_PtrToInst(arrowPtr);
                    
                    print(ocArrow.name);
                    
                };
    Das funktioniert perfekt, vielen Dank!
    Geändert von Bloodfly91 (29.12.2017 um 16:34 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