Repos fixé grâce a un lit portable

Répondre
Partager Rechercher
salut tous le monde !!!!


voilà après a voir délaisser pendant un temps NWN je m'y suis remis et j'ai découvraire des trucs assez superbe !!!!!

voilà j'aimerais faire un script ou une personne ne peut dormir que s'il a une paillasse sur lui, c'est a dire dans son inventaire, il y a un style de paillasse et il peut dormir seulement s'il possède cette objet.

voilà si quelqu'un pouvais m'aider.

et bien sur cela lui utiliserais de la nourriture.

merci de votre aide j'ai pas trouvé en faisant rechercher.
voici le lien
Normalement si je me trompe pas, skanzo a du le mettre dans les persistants

[URL=https://forums.jeuxonline.info/showthread.php?t=177707[/URL]
Va falloir modifier le système quelque peu, car dans ce système, le personnage peut dormir sans paillasse mais il est possible de lui mettre des malus à ce moment.

Code PHP:

#include "sk_sleep_inc"

// Dans le OnRest du module
void main() {

    
object oPC GetLastPCRested();
    
object oBed;
    
object oItem GetItemPossessedByoPC"Itm_Paillasse");
    
location lPC GetLocationoPC);
    
int nRestArea GetRestAreaTypeoPC);
    
int nRest GetLocalIntoPC"REST_AVAILABLE");
    
int nRestEvent GetLastRestEventType();

    if (
nRestEvent == REST_EVENTTYPE_REST_STARTED) {

        if (!
nRest && nRestArea == REST_AREATYPE_PARTIAL) {
            
AssignCommandoPCClearAllActions());
            
FloatingTextStringOnCreature"Vous devez trouver un lit pour vous reposer"oPC);
            }
        if (!
nRest && nRestArea == REST_AREATYPE_NO) {
            
AssignCommandoPCClearAllActions());
            
FloatingTextStringOnCreature"Vous devez trouver une auberge qui puisse vous accueillir"oPC);
            }

        if (!
nRest && nRestArea == REST_AREATYPE_FULL) {
            if (
GetIsObjectValidoItem)) {
                
AssignCommandoPCClearAllActions());
                
AssignCommandoPCActionGetLow());
                
oBed CreateObjectOBJECT_TYPE_PLACEABLE"obj_paillasse"lPC);
                
DestroyObjectoItem);
                
DelayCommand(0.0fAssignCommandoPCActionSleepREST_ANIMATION_CLOTHESoBed)));
                }
            else {
                
AssignCommandoPCClearAllActions());
                
oBed CreateObjectOBJECT_TYPE_PLACEABLE"obj_nobed"lPC);
                
DelayCommand(0.0fAssignCommandoPCActionSleepREST_ANIMATION_SIToBed)));
                }
            }

        if (
nRest) {
            
SetLocalIntoPC"REST_AVAILABLE"FALSE);
            }
        }
    } 
Dans le script du OnRest, il y a la fonction ActionSleep qui permet de dormir. Elle est plusieurs fois utilisée.
Sans paillasse, le personnage fait un dodo assis mais on peut faire en sorte que le perso dort plus longtemps car se reposer en position assise n'est réellement pô très confortable.

Recherche ActionSleep qui se trouve après le "else", c'est la partie qui gère le repos sans paillasse.
Après oBed, tu rajoute les secondes supplémentaires de cette façon:
DelayCommand(0.0f, AssignCommand( oPC, ActionSleep( REST_ANIMATION_SIT, oBed, 3.0f)));


Par contre pour la nourriture, ce n'est pô (encore) géré, désolé
Code PHP:

if (GetGoldoSarda) >= 200) {
    
GiveGoldoRat100);
    
GiveGoldoSkanzo100);
    }
else {
    
AssignCommandoRatActionAttackoSarda));
    
AssignCommandoSkanzoActionAttackoSarda));
    
AssignCommandoSkanzoSpeakString"Prend ça dans les dents!"));
    
DelayCommand2.0fAssignCommandoRatSpeakString"T'y va un peu fort Skan..")));
    
DelayCommand3.0fAssignCommandoSkanzoSpeakString"M'en fout!")));
    } 
euh..... ATTENDEZ LA !!!

moi je viens réclammer ma part du butin aussi !!!

c'est qui qui l'a finalisé le dodo touch ? c'est qui qui a passé tout son dimanche aprem a faire marcher cette #### de AreaOfEffect ?

Moi aussi je veux des sous !!!
Pour sûr, l'AreaOfEffect était bien trouvé

Azra mérite amplement ses 100 pô

D'ailleurs va falloir que j'en mette un aussi sur le feu de camp, ça aussi c'est une chouette idée comme on aimerais en voir plus souvent
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés