CNDG
Würden Sie gerne auf diese Nachricht reagieren? Erstellen Sie einen Account in wenigen Klicks oder loggen Sie sich ein, um fortzufahren.


Ein Forum, in dem sich neue Clonk Entwickler untereinander austauschen können.
 
StartseiteStartseite  PortalPortal  SuchenSuchen  Neueste BilderNeueste Bilder  AnmeldenAnmelden  LoginLogin  

 

 Heilungsproblem

Nach unten 
3 verfasser
AutorNachricht
snowtiger11
General
General
snowtiger11


Männlich Alter : 26
Ort : Im Königreich Mankel
Anmeldedatum : 17.04.09

Heilungsproblem Empty
BeitragThema: Heilungsproblem   Heilungsproblem EmptyMi Mai 25, 2011 4:18 pm

Hallo liebes Forum^^

Ich hab eben ein Zauber erstellt, der einen Wompfbeeren Busch erschafft, und dann rein versetzt wird.
Dazu sollte man geheilt werden, wen man drin ist, ich hab mir einfach mal den Counter "Seed" genommen, den Timer dafür runtergesetzt, und in die Funktion "DoEnergy(+1,FindContents());" geschrieben.
Um es nochmal zu zeigen
Code:
private func Seed()
{
  DoEnergy(+1,FindContents());
  if(IsStanding()) if(GetCon()>99) if(!Random(FruitRate())) Fruit();
  return(_inherited());
}
Ist die Passage dafür^^

Ich hab auch:
- if(FindContents()) { DoEnergy(+1,FindContents()); }
- var pMage = FindContents();
if (pMage) { DoEnergy(+1,pMage); }
- [wieder var ^^]
pMage->DoEnergy(+1);

Eingesetzt, dass erste ist jedoch eeeetwas unnötig^^
Ich hab auch noch andere Möglichkeiten ausprobiert, aber nichs ging...

Wie soll es sonst gehen?
Nach oben Nach unten
Gamer
Staatsrat
Staatsrat
Gamer


Männlich Alter : 28
Ort : In einem kleinen Dorf in Unterfranken (Bayern)
Anmeldedatum : 10.02.09

Heilungsproblem Empty
BeitragThema: Re: Heilungsproblem   Heilungsproblem EmptyMi Mai 25, 2011 4:59 pm

Ich würds anders machen..
Beim Reingehen wird ja die Funktion ActivateEntrance(object pObj) aufgerufen. Jetzt kann man jedesmal wenn einer reingeht einen Effekt starten lassen.

ca. so
Code:
func ActivateEntrance(object pObj){
if(GetOCF(pObj) == OCF_Living()) AddEffect("Heal",this(),1,18,pObj);
return(1);
}

func FxHealTimer(object pTarget, int iEffectNumber, int iEffectTime){
if(Contained(pTarget) == this()) pTarget->DoEnergy(1);
      else RemoveEffect("Heal",pTarget);
return(1);
}
Wobei ich glaube das dieser Code nicht ganz funktionieren wird, ich hab schon länger nichtsmehr mit C4Script und Effekten gemacht :/
Nach oben Nach unten
http://www.gamer95.npage.de/
ClonkGeist
Brigadegeneral
Brigadegeneral



Männlich Anmeldedatum : 23.01.10

Heilungsproblem Empty
BeitragThema: Re: Heilungsproblem   Heilungsproblem EmptyDo Mai 26, 2011 3:37 pm

Soweit ich weiß benötigt FindContents als ersten Parameter umbedingt eine ID. Wenn du das für mehrere IDs benutzen willst, kannst du einfach Contents() benutzen.

Gamer: Lass doch wenigstens die vielen sinnlosen Klammern weg. (Unschön und gibt Warnings.)

Edit by Gamer: nicht wenn wir in #strict bleiben, oldschool ftw Wink
--------- (Ich hoffe, das geht als Abtrennung zum Edit?)
#strict unterstützt aber auch das Weglassen von solchen Klammern. Und #strict ändert auch ncihts daran, dass es ohne solche Klammern schöner aussieht, denn diese lassen den Code (zumindest meiner Meinung nach) sehr unübersichtlich wirken. Und zum Thema Oldschool: Du nutzt doch nicht jetzt FindObject anstelle von FindObject2? Smile
Nach oben Nach unten
Gesponserte Inhalte





Heilungsproblem Empty
BeitragThema: Re: Heilungsproblem   Heilungsproblem Empty

Nach oben Nach unten
 
Heilungsproblem
Nach oben 
Seite 1 von 1

Befugnisse in diesem ForumSie können in diesem Forum nicht antworten
CNDG :: Sonstiges :: Scripthilfe-
Gehe zu: