Hi Ich hab noch nich so viel Erfahrung mit scripts und brauch ein Haus in dem man ohne Flagge kaufen kann . Dafür hab ich einfach mal des script vom Drug store raus kopiert. Es funktioniert !Ich will aber das der text über den zu kaufenden Objekten angezeigt wird weil so weiß man nicht was man kauft . Außerdem will ich ,dass man nur bestimmte sachen Kaufen kann. Kann mir des bitte jemand erklären (Hoffentlich wieder mit tollen effekten ^^) ? danke hier soweit des script
public func IndividualOffers() { return(ObjectCount(DRSI)); } // public func Drugstore_HomebaseMaterialPlayer() { return([Spielernummer]); } public func HomebaseMaterialPlayer() { return(GameCall("DrugstoreebaseMaterialPlayer")); }
public func ContainedDigDouble(object pClonk) { // Menü erzeugen CreateMenu(GetID(), pClonk, this(), 2, "$WithdrawMoney$"); AddMenuItem("$WithdrawMoney$", "Withdraw", SFT2, pClonk, 0, pClonk, 0, 128, 0, 10); }
protected func Withdraw(id bagId, object pClonk, bool dummy, int iValue) {
DoWealth(GetOwner(pClonk), -iValue); var cObj = pClonk; RemoveObject(SFT1,0,0); CreateObject(SFT2,0,0); if(pClonk->~RejectCollect(bagId)) cObj = this(); var bag = CreateContents(bagId, cObj); // Besitzer setzen SetOwner(GetOwner(pClonk), bag); // Wert setzen bag->~SetValue(iValue); // Geräusch! Sound("Uncash", 1, 0,0, GetOwner(pClonk)); }
/* Kaufmenü */ protected func ContainedUp(object pClonk) { [$BuyMenu$] // Etwaige Menüs schließen if(GetMenu()) CloseMenu(); // Menü erzeugen CreateMenu(DRST, pClonk, 0,C4MN_Extra_Value, "$NoBuyMaterial$", 0, 0, 1); // Individuelle Angebote nutzen? var iPlr = HomebaseMaterialPlayer(); if(IndividualOffers()) iPlr = GetOwner(pClonk); // Items hinzufügen var Id, i; while(Id = GetHomebaseMaterial(iPlr, 0, i++, C4D_All)) AddMenuItem("$BuyDesc$", "BuyItem", Id, pClonk, GetHomebaseMaterial(iPlr, Id), ObjectNumber(pClonk), GetDesc(0,Id), 128, 0, GetValue(0,Id,0,iPlr)); return(1); }
private func BuyItem(id Id, int iClonk, bool fSpecial2, int iVal) { var pClonk = Object(iClonk); var buyPlayer = HomebaseMaterialPlayer(), cashPlayer = GetOwner(pClonk), BuyToObj, BoughtObj; if(IndividualOffers()) buyPlayer = cashPlayer;
// Geldfix var value = GetValue(0,Id,this(),buyPlayer); if(value > GetWealth(cashPlayer)) { // Fehler Sound("Error",1,0,100,cashPlayer); return(PlayerMessage(cashPlayer,"$NoMoney$",this())); } else { DoWealth(buyPlayer, +value); DoWealth(cashPlayer, -value); }
while(BoughtObj = Buy(Id, cashPlayer, buyPlayer, this(), true)) { // gekauftes Objekt ist ein Mannschaftsmitglied if(GetOCF(BoughtObj) & (OCF_CrewMember | OCF_Alive)) { // Startet hier mit voller Energie DoEnergy(GetPhysical("Energy",0,BoughtObj) / 1000, BoughtObj); } else if (pClonk && GetDefCollectible(Id) && !GetDefCoreVal("NoGet", "DefCore", Id)) { // Objekt tragbar? Dann in den Clonk, wenn er will, ansonsten im Drugstore lassen Collect(BoughtObj, pClonk); } Sound("Uncash", 1, 0,0, cashPlayer); // Noch mehr kaufen? if(!fSpecial2 || !GetHomebaseMaterial(buyPlayer, Id)) break; }
// Menü neu erzeugen var sel = GetMenuSelection(pClonk); ContainedUp(pClonk); SelectMenuItem(sel, pClonk); return(1); }
sry das des ein wenig lang is |