• beyond tellerrand – play. Register Now!
Zurück   Flashforum > Flash > ActionScript > Spielkonzepte und Spieleprogrammierung

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-07-2010, 17:22   #16 (permalink)
in the boondocks
 
Benutzerbild von shin10
 
Registriert seit: Feb 2006
Ort: Augsburg
Beiträge: 3.238
drehen kannst du einen mc mit rotation
was die animation angeht solltest du dir die Tween-klasse ansehen

ansonsten brauchst du nur noch ein verständnis für sinus, cosinus und tangens;evtl. eine formelsammlung
Math.sin(), Math.cos(), Math.tan() bzw. Math.atan2() ...
(das läuft übrigens alles über den einheitskreis, also bogenmaß statt grad)

was die entfernung zum gegner angeht, die lässt sich mit der Point-klasse einfacher berechnen, als über pythagoras. aber da kannst du ja mal beides ausprobieren.

mfg

sx
__________________

flintfabrik.de
shin10 ist offline   Mit Zitat antworten
Alt 14-07-2010, 17:39   #17 (permalink)
experience++;
 
Benutzerbild von salazar
 
Registriert seit: Jul 2002
Ort: Düsseldorf
Beiträge: 11.305
hey,
grad deinen beitrag entdeckt.
ich schraub aktuell auch an einem tower defense spielchen rum. wenn es mal was zu sehen gibt sag ich bescheid. ansonsten bin ich sehr gespannt auf deine variante!

cheers,
sal
__________________
Bitte keine Flashfragen an mich schicken. Dafür ist ja das Forum da! Das betrifft auch Profilnachrichten.
Chuck Norris hat den Flash Player für alle mobilen Betriebssysteme!
salazar ist offline   Mit Zitat antworten
Alt 15-07-2010, 03:48   #18 (permalink)
Mediendesigner
 
Benutzerbild von izanagi
 
Registriert seit: Jan 2007
Ort: Köln
Beiträge: 418
Hi salazar, freut mich. Bin ich auch gespannt.....
wobei meins jetzt keine Wucht wird,... es handelt sich lediglich um ein Werbe Gutschein Spiel. Eigentlich kein Spassspiel, aber ich habe knapp eine Woche
an dem Konzept gearbeitet und Tower Defence kam bei raus
Ausserdem bin ich nur Mediengestalter, bin kein Ass im programmieren.


@shin10
schei**e das hab ich befürchtet... Mathematik... ufff
ja ich werd mir das mal anschauen alles. Aber erstmal brauch ich
alle 6 Gebäude mit 7 verschiedenen Waffen funktionen und 15 Upgrades.
Ich bin schon fast durch damit.

Geändert von izanagi (15-07-2010 um 04:20 Uhr)
izanagi ist offline   Mit Zitat antworten
Alt 16-07-2010, 00:27   #19 (permalink)
Mediendesigner
 
Benutzerbild von izanagi
 
Registriert seit: Jan 2007
Ort: Köln
Beiträge: 418
Nabend Shin10,


vielleicht kannst du mir hier helfen. Ich hab die Baufunktionen fertig
und wollte das ganze jetzt auf eine Ebene höher verfrachten,
sprich das ganze Level mit allen Bauplätzen sowie dynamische Gebäude childs
in einen Container packen.

Hier ein paar Beispiel aus dem alten die wirklich funktionieren :
PHP-Code:
this["bauplatz"+b].addEventListener(MouseEvent.CLICKbaumenu);
////////objekte preloader
for (var 1<= 9t++) {

    
this[gebaude[t]] = new Bauwerk()as MovieClip;
    
this[gebaude[t]].typ=0;
        
// blaaa alles auf 0

////////gebäude ersteller
addChildAt(gebaude[baunummer], indexnummer);
gebaude[baunummer].typ=aktuellerbutton
for (var 
t2 1t2 <= 7t2++) {// leere waffen geben
        
gebaude[ausbauziel].waffe[t2]=0;
    }
//// ansteuern
if (gebaude[ausbauziel].typ<=2) {
    
anzeigen_gebaude1.visible=true
Der Container heisst "spielkarte" und ich habe vor jedem Pfad nun diesen container gesetzt, das sieht so aus:
PHP-Code:
spielkarte["bauplatz"+b].addEventListener(MouseEvent.CLICKbaumenu);
////////objekte preloader
for (var 1<= 9t++) {

    
spielkarte[gebaude[t]] = new Bauwerk()as MovieClip;
    
spielkarte[gebaude[t]].typ=0;
        
// blaaa alles auf 0

////////gebäude ersteller
spielkarte.addChildAt(gebaude[baunummer], indexnummer);
spielkarte.gebaude[baunummer].typ=aktuellerbutton
for (var 
t2 1t2 <= 7t2++) {// leere waffen geben
        
spielkarte.gebaude[ausbauziel].waffe[t2]=0;
    }
//// ansteuern
if (spielkarte.gebaude[ausbauziel].typ<=2) {
    
anzeigen_gebaude1.visible=true
Nun hat er Probleme das ein Begriff ist nicht definiert, ich finde den Haken nicht. Muss was mit dem erstellen addChild innerhalb des MCs "spielkarte" zu tun haben.
izanagi ist offline   Mit Zitat antworten
Alt 16-07-2010, 00:40   #20 (permalink)
in the boondocks
 
Benutzerbild von shin10
 
Registriert seit: Feb 2006
Ort: Augsburg
Beiträge: 3.238
das lässt sich so schwer sagen. so auf den ersten blick kann ich da kein problem erkennen. aber das kann ja sonstwas sein.

ich würde an deiner stelle einfach den debugger benutzen und erstmal schaun an welcher zeile es liegt.
alternativ kannst du auch mit traces schaun, wann es hakt.

brauchst du die variablen wirklich auch in der spielkarte? reicht es nicht, wenn du die mcs darauf reinstellst?
dann würde ich nämlich beim alten code bleiben und nur die zeile mit addChild ändern.

mfg

sx
__________________

flintfabrik.de
shin10 ist offline   Mit Zitat antworten
Alt 16-07-2010, 00:55   #21 (permalink)
Mediendesigner
 
Benutzerbild von izanagi
 
Registriert seit: Jan 2007
Ort: Köln
Beiträge: 418
ja das würd ich schon gerne, aber wie spreche ich die variablen
denn dann an.
Mal echt blöd gefragt... das hier >>>> [gebaude[t]] = new Bauwerk()as MovieClip; ist doch ein erstelltes Objekt oder ? Also wir sprechen hier ja von OOP.



EDIT: ich stell mir das halt so vor.... ich hab OBJEKTklasse mit arrays und vars und einem bunten hintergrund(mit mc als vorlage)
jetzt erstelle ich OBJEKT1 das die OBJEKTklasse erbt. Wenn ich OBJEKT1 auf der stage erzeuge, sind die variablen über OBJEKT1.myVar[1] ansprechbar.
Erstelle ich aber OBJEKT1 in einen kontainer wie "mccontainer" dann ist die varaible über mccontainer.OBJEKT1.myVar[1] ansprechbar.


^^ sag mir das ich da absolut falsch liege.

Geändert von izanagi (16-07-2010 um 01:07 Uhr)
izanagi ist offline   Mit Zitat antworten
Alt 16-07-2010, 01:20   #22 (permalink)
in the boondocks
 
Benutzerbild von shin10
 
Registriert seit: Feb 2006
Ort: Augsburg
Beiträge: 3.238
ich schau mir das morgen nochmal an. ich bin jetzt echt groggi.

mfg

sx
__________________

flintfabrik.de
shin10 ist offline   Mit Zitat antworten
Alt 16-07-2010, 01:34   #23 (permalink)
Mediendesigner
 
Benutzerbild von izanagi
 
Registriert seit: Jan 2007
Ort: Köln
Beiträge: 418
alles klar dank dir

PS: gebaude[baunummer].typ ist keine variable bei mir, sondern ein generierter MC mit der eigenschaft "typ"

EDIT: ich habs hinbekomm puhhh... doch alles so wie du es gesagt hast. Variablen und arrays der Objektklassen scheinen immer im Hauptframe zu liegen.
Da versteh ich den Sinn der OOP nicht mehr, die klamotten sollen doch IM objekt selbst liegen.

Geändert von izanagi (16-07-2010 um 03:53 Uhr)
izanagi ist offline   Mit Zitat antworten
Alt 16-07-2010, 08:12   #24 (permalink)
in the boondocks
 
Benutzerbild von shin10
 
Registriert seit: Feb 2006
Ort: Augsburg
Beiträge: 3.238
du kannst das schon auch in einem objekt anlegen, aber dann
PHP-Code:
 spielkarte.gebaude[t] = ... 
oder
PHP-Code:
 spielkarte["gebaude"][t] = ... 
nicht
PHP-Code:
 spielkarte[gebaude[t]] = ... 
beim letzten würde er ja erst nachsehen, was gebaude[t] ist. da es gebaude aber ja nicht gibt (sondern nur spielkarte.gebaude), läuft die geschichte ins leere


beispiel
PHP-Code:
var arr1:Array = [1"hallo""da"];
var 
obj:Object = new Object();

obj.arr2 = ["array""im""object"];

//das geht
trace(arr1.toString());
trace(obj.arr2.toString());
//oder
trace(obj["arr2"].toString());
trace(obj.arr2[0].toString() +" "obj["arr2"][1].toString());
//zum verwirren ;)
trace(obj.arr2arr1[0] ].toString());

//diese hier müssten alle fehler werfen oder sind undefined!!
trace(arr2.toString());
trace(obj.arr1.toString());
trace(obj[arr2].toString());
trace(obj[arr2[0]].toString()); 

mfg

sx
__________________

flintfabrik.de

Geändert von shin10 (16-07-2010 um 08:28 Uhr)
shin10 ist offline   Mit Zitat antworten
Alt 16-07-2010, 18:20   #25 (permalink)
Mediendesigner
 
Benutzerbild von izanagi
 
Registriert seit: Jan 2007
Ort: Köln
Beiträge: 418
Hey wenn man da einmal richtig durchblick hat dann is das relativ einfach.
Super danke dir die Erleuchtung hat mich wieder ein Stück weiter gebracht. thx

Meine nächsten Schritte sind nun
  1. erweiterung des Spielfelds von 9 auf 33 Bauplätze (easy)
  2. KI, Gegner erstellen
  3. KI, Reaktionen und Kollisionsabfragen
  4. einzelne Funktionen an und auschalten je nach Level
  5. Soundeffekte implementieren
  6. verschiedene Leveltypen
  7. Lustige Events einbauen, kleine Kampagne ertellen.
  8. Punkteausgabe mit Gutscheincode implementieren
  9. Grafiken erstellen
  10. Dummygrafiken austauschen

Was schon fertig ist sind (stand 16.07) rund 1650 Zeilen Actionscript
  • komplettes Konzept
  • Charakter Design
  • Dummygrafiken Flash
  • Spielkarte mit 9 Bauplätzen
  • Menü für Gebäudeauswahl + Gebäudebau Funktion
  • Abfragen jedes Gebäude ob und welche Upgradefunktionen verfügbar sind
  • Abfragen welche Upgrades gekauft wurden
  • Abfragen wieviel Strom, Energie, etc. Gebäude hat
  • Abfragen welche Infos des Gebäudes im Infofenster angezeigt werden soll
  • Abfragen was der Bau kostet und welche Wirkungen er darstellt
  • Abfragen was das Upgrade kostet und welche Wirkungen er darstellt
  • Abfragen ob ein Upgrade bereits installiert wurde
  • Abfragen welche Waffe oder Abwehrsystem gerade aktuell aktiv ist
  • Verkaufsfunktion das den Bauplatz wieder freigibt, das Gebäude killt und auf 0 setzt

Geändert von izanagi (16-07-2010 um 18:28 Uhr)
izanagi ist offline   Mit Zitat antworten
Alt 16-07-2010, 19:52   #26 (permalink)
Mediendesigner
 
Benutzerbild von izanagi
 
Registriert seit: Jan 2007
Ort: Köln
Beiträge: 418
wie is das mit den Timer? Der Count läuft im hintergrund immer weiter bis ins unendliche. Empfiehlst du den Timer irgendwann zu Reseten auf Count 0 oder kann der ruhig
ins Unendliche laufen ?

PHP-Code:
var timer_geld:Timer=new Timer(100000); 
timer_geld.start();

timer_geld.addEventListener(TimerEvent.TIMERadd_geld); // jede 10. sekunde

function add_geld(e) {
    
xountstaler=xountstaler+geldproduktiongesamt;


Geändert von izanagi (16-07-2010 um 19:54 Uhr)
izanagi ist offline   Mit Zitat antworten
Alt 17-07-2010, 01:26   #27 (permalink)
in the boondocks
 
Benutzerbild von shin10
 
Registriert seit: Feb 2006
Ort: Augsburg
Beiträge: 3.238
oha,

klingt als hättest du noch einiges vor. da bin ich mal gespannt.
was deine timer-frage betrifft denke ich du kannst ihn einfach laufen lassen, außer beim eintritt in ein anderes level natürlich bzw. wenn der spieler pause drücken kann oder so. ich bin allerdings mit tower defense nicht so vertraut ... ehrlich gesagt hab ich es sogar googlen müssen. offensichtlich ist es jetzt soweit - ich bin alt!
__________________

flintfabrik.de
shin10 ist offline   Mit Zitat antworten
Alt 17-07-2010, 13:35   #28 (permalink)
Mediendesigner
 
Benutzerbild von izanagi
 
Registriert seit: Jan 2007
Ort: Köln
Beiträge: 418
hahahaha ach quatsch, es gibt immer ein erstes mal.
Das ist ganz gut das du es nicht kennst, dann könnt ich dich zum BEtatester machen eine Meinung eines nichtkenners ist da Gold wert.
izanagi ist offline   Mit Zitat antworten
Alt 19-07-2010, 21:13   #29 (permalink)
Mediendesigner
 
Benutzerbild von izanagi
 
Registriert seit: Jan 2007
Ort: Köln
Beiträge: 418
nabend,
gibts eigentlich einen Boolishen Array ?
Ich wollt bisschen Performance sparen, da überleg ich ob ich mein
array das nur true/false haben soll, auch als solches definiert werden sollte
um platz zu sparen.
izanagi ist offline   Mit Zitat antworten
Alt 19-07-2010, 21:15   #30 (permalink)
in the boondocks
 
Benutzerbild von shin10
 
Registriert seit: Feb 2006
Ort: Augsburg
Beiträge: 3.238
ab flashplayer 10 gibt es die vector-klasse. das ist genau was du suchst.

mfg

sx
__________________

flintfabrik.de
shin10 ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
mehrere Kollisionen sparsam erstellen (Tower Defence Game) ?!? themerx Flash 8 5 29-10-2008 14:35
hilfe bei erstellung von tower defense flash cmdSoniq ActionScript 1 7 12-02-2008 16:17
Die ersten Schritte hunkarcelebi Flash Einsteiger 17 28-02-2006 22:12
ersten 3d schritte... Hamster2k Softwarearchitektur und Entwurfsmuster 35 21-10-2002 12:45
sound wird beim Preloader auf ersten dem ersten Frame geladen II werbe-grafix Flash 4 und Flash 5 1 18-12-2001 19:24


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:57 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele