0 registered members (),
17,758
guests, and 5
spiders. |
Key:
Admin,
Global Mod,
Mod
|
|
|
Fragen zu einem Waffen- und Bewegungsscript
#201086
04/06/08 21:02
04/06/08 21:02
|
Joined: Apr 2008
Posts: 5
KingTBone
OP
Newbie
|
OP
Newbie
Joined: Apr 2008
Posts: 5
|
Hallo , ich habe gerade angefangen mit dem Gamestudio ein Spiel ala Counterstrike zu machen da es wohl nicht allzu schwer zu sein scheint. Ich habe mir ein Waffen- und Bewegungsscript von http://www.tsgames.de/index.php?option=com_content&task=view&id=13&Itemid=3runtergeladen um es nach meinen wünschen anzupassen und zu erweitern. So sieht es bis jetzt bei mir aus
var video_screen = 1;
var video_mode = 8;
var video_depth = 32;
// Bewegung.wdl
var geschwindigkeit=20;
var maus_geschwindigkeit=12;
var moving;
function weapon();
action spieler
{
my.invisible=on;
ent_create("minigun.MDL",nullvector,weapon);
while(1)
{
moving.x=(key_w-key_s)*geschwindigkeit*time;
moving.y=(key_a-key_d)*geschwindigkeit/3*time;
move_mode=glide;
my.pan-=mouse_force.x*maus_geschwindigkeit*time;
camera.pan=my.pan;
camera.tilt+=mouse_force.y*maus_geschwindigkeit*time;
camera.x=my.x;
camera.y=my.y;
camera.z=my.z+70;
if(trace(vector(my.x,my.y,my.z-70), (vector(my.x,my.y,-030)))>0)
{
moving.z = -trace(vector(my.x,my.y,my.z-70), (vector(my.x,my.y,-2000)));
}
else
{
moving.z = -trace(vector(my.x,my.y,my.z-70), (vector(my.x,my.y,-2000)))*10*time;
}
ent_move(moving,nullvector);
wait(1);
}
}
entity waffe
{
type=<minigun.MDL>;
flags=visible;
z=-2;
}
function main()
{
load_level("map02.wmb");
screen_color=1;
max_entities=1000;
fps_max=60;
}
action boden
{
my.polygon=on;
}
include <Schuss.wdl>;
var vec_test;
var shot;
function hole()
{
my.oriented = on; // frei positionierbar
my.facing = off;
my.passable=on;
my.scale_x=0.4;
my.scale_y=my.scale_x;
vec_to_angle(my.pan, normal);
my.x+=cos(my.pan);
my.y+=sin(my.pan);
my.z+=sin(my.tilt);
schuss();
sleep(30);
my.transparent=on;
my.alpha=100;
while(my.alpha>0)
{
my.alpha-=1*time;
wait(1);
}
ent_remove(me);
}
function weapon()
{
my.invisible=on;
my.passable=on;
while(1)
{
my.passable=on;
my.x=camera.x;
my.y=camera.y;
my.z=camera.z;
my.pan=camera.pan;
my.tilt=camera.tilt;
if(key_w==0) && (key_s==0) && (key_a==0) && (key_d==0)
{
vec_test.x=screen_size.x/2+random(20)-10;
vec_test.y=screen_size.y/2+random(20)-10;
}
else
{
vec_test.x=screen_size.x/2+random(100)-50;
vec_test.y=screen_size.y/2+random(100)-50;
}
vec_test.z=200000;
vec_for_screen(vec_test,CAMERA);
if(mouse_left==1)
{
shot=c_trace(my.x,vec_test,ignore_me+ignore_you+ignore_passable+ignore_passable );
if(you)
{
you.skill1=1;
}
if (shot>0)
{
vec_test.pan=target.pan;
ent_createlocal("Bullethole.tga",target,hole);
}
media_play("Shot.wav",null,10);
sleep(0.1);
}
wait(1);
}
}
Sowas wie die Auflösung hab ich mit der Suchfunktion gefunden. Wenn ich schieße kommen Einschusslöcher an den Wänden und den Boden aber diese stehen etwas von der Wand ab , was jetzt nicht unbedingt anders sein muss wär aber schön . Das Hauptproblem liegt darin das wenn ich auf eine Stelle schieße die ganze Zeit dann kommen immerwieder einschusslöcher die jeweils einen kleinen abstand zum vorigen Einschussloch haben , sprich irgendwann sind die Einschusslöcher direkt vor dem Spieler und von der Seite sieht man dann die Einschusslächer wie sieh schön hintereinander gereit von der Wand weggehen. Das lässt sich doch bestimmt ändern. Und noch eine Sache. Die Einschusslöcher sind nicht durchgehbar. Wenn ich auf den Boden schieße dann kann ich dort nicht mehr lang laufen. Übrigens erwarte ich nicht das man mir den Arsch abwischt. Ich bin bereit zu lernen und würde mich schon über ein paar Anhaltspunkte freuen. Und wenn ich hier falsch bin dann entschuldigung
|
|
|
Re: Fragen zu einem Waffen- und Bewegungsscript
[Re: KingTBone]
#201090
04/06/08 21:35
04/06/08 21:35
|
Joined: Jan 2002
Posts: 4,225 Germany / Essen
Uhrwerk
Expert
|
Expert
Joined: Jan 2002
Posts: 4,225
Germany / Essen
|
Hallo KingTBone,
das Forum ist nicht ganz das richtig, da das Script, das Du verwendest C-Script und nicht Lite-C ist. Macht ja aber nüscht.
Ich hab mir den Code mal angeguckt, das sieht soweit alles recht gut aus. An dem Einschussloch solltest Du eigentlich nicht hängen bleiben, da sein passable flag gesetzt wird. Von daher kann man nicht so genau sagen, womit Dein Spieler kollidiert / womit der c_trace kollidiert, so dass die Löcher aufeinander hängen. Setze doch einfach mal ein "d3d_lines = 1" an den Anfang deines Skriptes. Damit wird die Bounding box aller Entities gezeichnet und Du siehst ggf. welches Objekt im Weg ist. Wie sieht denn die "schuss.wdl" aus?
Always learn from history, to be sure you make the same mistakes again...
|
|
|
Re: Fragen zu einem Waffen- und Bewegungsscript
[Re: Uhrwerk]
#201223
04/07/08 16:45
04/07/08 16:45
|
Joined: Apr 2008
Posts: 5
KingTBone
OP
Newbie
|
OP
Newbie
Joined: Apr 2008
Posts: 5
|
Achso sorry, hab erst gestern angefangen. Die schuss.wdl: ***************************************************
Schuss.wdl, erstellt mit EasyParticle 3.1.
Dieses Script kann frei und ohne credits benutzt werden.
Anleitung:
Den unterstehenden Script per include <Schuss.wdl>; in ihre Main WDL datei einfügen.
Der Actionname ist: Schuss_action
Falls Sie irgendwelche Fehler im Script bemerken, bitte kontaktieren Sie den Support unter Support@EasyParticle.de
Viel Spaß noch mit dem Script
TripleX --- Hawkgames
*****************************************************/
bmap rauch_farbe6 = <rauch_gray.tga>;
VAR SchussAnzahlPartikel = 15.430; //number of particles used for this effect
var ausbreitung=0;
Function Schuss_spec_fun()
{
if(my.size > 0) { my.size += 0.15 *time; }else{my.lifespan = 0; }
my.alpha -=2.258 *time;
IF(My.alpha < 0) { my.alpha = 0; my.lifespan = 0; }
}
Function Schussspezial()
{
my.blue = 81.410 ;
my.green = 81.258 ;
my.red = 81.105 ;
my.bmap = rauch_farbe6; //the effect bitmap
my.vel_x = random( 1.5 ) - 0.75 ;
my.vel_y = random( 1.5 ) - 0.75 ;
my.vel_z = -0.029 ;
my.size = 10.354 ;
my.alpha = 70 ;
my.gravity = 0.15 ;
my.streak = off;
my.flare = on;
my.bright = on;
my.beam = off;
my.move = on;
my.transparent = on;
my.function = Schuss_spec_fun;
}
Function Schuss()
{
// while(1)
// {
SchussAnzahlPartikel = 35;
effect(Schussspezial,max(1,SchussAnzahlPartikel*time),my.x,nullvector);
wait(1);
effect(Schussspezial,max(1,SchussAnzahlPartikel*time),my.x,nullvector);
wait(1);
effect(Schussspezial,max(1,SchussAnzahlPartikel*time),my.x,nullvector);
wait(1);
// wait(1);
// }
}
action Schuss_action
{
my.invisible = on;
My.passable = on;
Schuss();
}
wenn ich d3d_lines = 1 einfüge dann hab ich ein gitternetz auf dem Bode , wenn ich auf diesen schieße dann ist da nur das normale Einschussloch über welches ich wieder nicht laufen kann.
Last edited by KingTBone; 04/07/08 17:04.
|
|
|
Re: Fragen zu einem Waffen- und Bewegungsscript
[Re: KingTBone]
#201235
04/07/08 17:57
04/07/08 17:57
|
Joined: Jan 2002
Posts: 4,225 Germany / Essen
Uhrwerk
Expert
|
Expert
Joined: Jan 2002
Posts: 4,225
Germany / Essen
|
Wenn um das Einschussloch keine blaue Box zu sehen ist (so in etwa wie die Linien auf dem Boden), dann ist es auch kein Hinderniss für die Kollisionserkennung.
Jetzt so ohne weiteres kann ich keinen Grund für das Verhalten sehen. Was Du mal versuchen kannst ist statt "ent_move" und "trace" "c_move" und "c_trace" zu verwenden. Die Verwendung ist fast identisch. Die c_ Befehle verlangen den Modus nur als weiteren Parameter. In der Waepon Aktion hast Du auch schon ein Beispiel dafür. ent_move und trace sind alte Befehle und sollte nicht mehr verwendet werden. Vielleicht hilft Dir das ja weiter.
Always learn from history, to be sure you make the same mistakes again...
|
|
|
Re: Fragen zu einem Waffen- und Bewegungsscript
[Re: KingTBone]
#201254
04/07/08 20:05
04/07/08 20:05
|
Joined: Jan 2002
Posts: 4,225 Germany / Essen
Uhrwerk
Expert
|
Expert
Joined: Jan 2002
Posts: 4,225
Germany / Essen
|
Ich meinte in Bewegung.wdl, action spieler. Da sind zwei Trace und ein ent_move. In schuss.wdl hab ich gar nichts gesehen, was damit zu tun haben könnte.
Always learn from history, to be sure you make the same mistakes again...
|
|
|
Re: Fragen zu einem Waffen- und Bewegungsscript
[Re: Uhrwerk]
#201257
04/07/08 20:42
04/07/08 20:42
|
Joined: Apr 2008
Posts: 5
KingTBone
OP
Newbie
|
OP
Newbie
Joined: Apr 2008
Posts: 5
|
Achso , dann probier ich da mal ein bisschen rum.
So, ich hab jetzt trace zu c_trace geändert , bei dem ent_move hat leider nicht hingehauen.
Leider hat das am Problem nichts geändert. Ich versuch mich ersmal an anderen funktionen des Spiels.
Ich danke dir für deine Hilfe
Last edited by KingTBone; 04/07/08 20:56.
|
|
|
Re: Fragen zu einem Waffen- und Bewegungsscript
[Re: KingTBone]
#201320
04/08/08 11:54
04/08/08 11:54
|
Joined: Jan 2002
Posts: 4,225 Germany / Essen
Uhrwerk
Expert
|
Expert
Joined: Jan 2002
Posts: 4,225
Germany / Essen
|
Tut mir leid, dass ich Dir nicht weiterhelfen konnte. Aber ich hab Dir mal ne PM geschrieben.
Always learn from history, to be sure you make the same mistakes again...
|
|
|
Re: Fragen zu einem Waffen- und Bewegungsscript
[Re: Uhrwerk]
#202105
04/13/08 11:55
04/13/08 11:55
|
Fear411
Unregistered
|
Fear411
Unregistered
|
mach es so
c_move(my,moving,nullvector,ignore_me + ignore_passable);
so müsste das mit dem laufen eigentlich funzen, da du das hole passable hast.
Last edited by Fear411; 04/13/08 11:57.
|
|
|
|