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 3 von 3
  1. Beiträge anzeigen #1 Zitieren
    Ritter Avatar von aebo
    Registriert seit
    Oct 2008
    Beiträge
    1.278
     
    aebo ist gerade online

    Printfunktion

    Hi zusammen,

    habe mal eine Frage bezüglich "Prints".
    Wenn ich mehrere Items von einem NPC zu einem anderen geben lasse mach ich es wegen der Übersicht so:

    Code:
    AI_PrintScreen ("Velayis erhalten",	 -1, 41, FONT_ScreenSmall, 2);
    AI_PrintScreen ("Degen erhalten",	 -1, 43, FONT_ScreenSmall, 2);
    AI_PrintScreen ("Grog erhalten",	 -1, 45, FONT_ScreenSmall, 2);
    
    CreateInvItems (hero, ItPl_Blueplant, 1);
    CreateInvItems (hero, ITMW_1H_VLK_Sword, 1);
    CreateInvItems (hero, ItFO_Addon_Grog, 1);
    Mit dieser Methode werden übereinanderprints vermieden.


    Anders mit dieser Lösung.
    Code:
    B_GiveInvItems (self, hero, ItPl_Blueplant, 1);
    B_GiveInvItems (self, hero, ITMW_1H_VLK_Sword, 1);
    B_GiveInvItems (self, hero, ItFO_Addon_Grog, 1);
    Jetzt meine Anliegen. Der Held bekommt eine nicht definierte Menge an Items. Z.b. 1x Apfel, 2 x Pfeile etc und diese sollen dann automatisch untereinander geprintet werden. Da die Items immer unterschiedlich sind kann ich auf das oben genannte Modell leider nicht zurückgreifen.
    Das Wappen
    -Eine fantastische Spielwelt erwartet dich-
    -bis zu 100 Stunden Spielzeit-

  2. Beiträge anzeigen #2 Zitieren
    Knight
    Registriert seit
    Aug 2009
    Ort
    Hessen
    Beiträge
    1.487
     
    Cryp18Struct ist offline
    Du kannst b_GiveInvItems so überarbeiten das nicht mehr an konstanten Stellen geprintet wird, sondern variabel.
    Beispiel:
    Code:
    func int B_GiveInvItems (var C_NPC giver, var C_NPC taker, var int itemInstance, var int amount)
    {
        [...]
        AI_PrintScreen_Ext (concatText, -1, YPOS_GoldTaken + YPOS_ItemGiven_Offset, FONT_ScreenSmall, 2);
        YPOS_ItemGiven_Offset = YPOS_ItemGiven_Offset + 3;
        [...]
    };
    YPOS_ItemGiven_Offset wäre dann einfach eine globale int variable die an anderer Stelle wieder reduziert werden muss.
    Code:
    var int YPOS_ItemGiven_Offset;
    func void calledEveryFrame()
    {
        if(YPOS_ItemGiven_Offset > 0)
        {
            YPOS_ItemGiven_Offset = YPOS_ItemGiven_Offset - 1;
        };
    };
    Falls du aber nicht alle prints auf solch ein System umstellst, kann es dann natürlich zu neuen/anderen Überlappungen kommen.

  3. Beiträge anzeigen #3 Zitieren
    Ritter Avatar von aebo
    Registriert seit
    Oct 2008
    Beiträge
    1.278
     
    aebo ist gerade online
    Zitat Zitat von Cryp18Struct Beitrag anzeigen
    Du kannst b_GiveInvItems so überarbeiten das nicht mehr an konstanten Stellen geprintet wird, sondern variabel.
    Beispiel:
    Code:
    func int B_GiveInvItems (var C_NPC giver, var C_NPC taker, var int itemInstance, var int amount)
    {
        [...]
        AI_PrintScreen_Ext (concatText, -1, YPOS_GoldTaken + YPOS_ItemGiven_Offset, FONT_ScreenSmall, 2);
        YPOS_ItemGiven_Offset = YPOS_ItemGiven_Offset + 3;
        [...]
    };
    YPOS_ItemGiven_Offset wäre dann einfach eine globale int variable die an anderer Stelle wieder reduziert werden muss.
    Code:
    var int YPOS_ItemGiven_Offset;
    func void calledEveryFrame()
    {
        if(YPOS_ItemGiven_Offset > 0)
        {
            YPOS_ItemGiven_Offset = YPOS_ItemGiven_Offset - 1;
        };
    };
    Falls du aber nicht alle prints auf solch ein System umstellst, kann es dann natürlich zu neuen/anderen Überlappungen kommen.
    Ja, so wollte ich das. Hätte wohl mal in die Funktion gucken sollen
    DANKE
    Das Wappen
    -Eine fantastische Spielwelt erwartet dich-
    -bis zu 100 Stunden Spielzeit-

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