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

Austausch | 
 

 Heilungsproblem

Vorheriges Thema anzeigen Nächstes Thema anzeigen Nach unten 
AutorNachricht
snowtiger11
General
General
avatar

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

BeitragThema: Heilungsproblem   Mi 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
Benutzerprofil anzeigen
Gamer
Staatsrat
Staatsrat
avatar

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

BeitragThema: Re: Heilungsproblem   Mi 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 :/

_________________
Star Wars Projekt Homepage: http://sites.google.com/site/clonkprojekte/star-wars

Das Burg Projekt.................................................................... Schaut doch mal im Super-Mario Clonk Editon Forum vorbei!
Nach oben Nach unten
Benutzerprofil anzeigen http://www.gamer95.npage.de/
ClonkGeist
Brigadegeneral
Brigadegeneral


Männlich Anmeldedatum : 23.01.10

BeitragThema: Re: Heilungsproblem   Do 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
Benutzerprofil anzeigen
Gesponserte Inhalte




BeitragThema: Re: Heilungsproblem   

Nach oben Nach unten
 
Heilungsproblem
Vorheriges Thema anzeigen Nächstes Thema anzeigen Nach oben 
Seite 1 von 1

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