views.inc - Frog, Bird, First Person and Free camera view -
fiki574 - 26.12.2011
VERSION 1.1
Released on 26/2/2012
INTRO:
Hello!
This is small include with 4 new camera views:
- Frog view (below ground and player)
- Bird view (over ground and player ---> GTA 1 and 2 style camera)
- First Person (well, name says it)
- Free view (follows player from static position)
Version 1.1:
- From five functions made just - one
- Added command /view (view-id) - you can change your view (this command is located inside the include, its ZCMD, so you will need ZCMD from Zeex; also, if you dont want it, simply open include and delete the command)
- Added _ALS_ hooking so it doesnt give you an error(s) while using this in other FS/GM
[ame]http://www.youtube.com/watch?v=B9Mb_utF2hw[/ame]
__________________________________________________ _______________________________________________
NATIVES & FUNCTIONS:
Only a single function!
pawn Код:
native SetPlayerView(playerid, cam_view);
//Change "cam_view" with following IDs of views:
0 - normal view
1 - bird view
2 - frog view
3 - first person
4 - free camera view
__________________________________________________ _______________________________________________
DOWNLOAD:
Mediafire v1.0 (outdated)
Mediafire v1.1 (newest, recommended)
__________________________________________________ _______________________________________________
BUG REPORT:
Please, report any bugs!
__________________________________________________ _______________________________________________
PROBLEM(S):
Few problems with these cameras:
1. They "lag"
2. First Person does not rotates camera
__________________________________________________ _______________________________________________
CREDITS:
ZeeX - ZCMD
aRoach - suggestion for making only a single function
fiki574_CRO - made this
Respuesta: views.inc - Frog, Bird, First Person and Free camera view -
[DOG]irinel1996 - 26.12.2011
Hehe, good job.
It's really, amm, funny. Frog's view makes me crazy!
Re: views.inc - Frog, Bird, First Person and Free camera view -
Kwarde - 26.12.2011
Hmm, nice made. Only the FPS should be a little bit higher: When I walk, I see my hands lower, not as good as in front of me (unless when I walk with my arms as high as possible and then lower my hands :P).
+rep for the nice and easy script (just looked inside the code).
BTW,
You should use the define/undefine stuff: If someone is using 'OnPlayerUpdate' and when you include this, you will get errors
- So you should either use the 'ALS_OnPlayerUpdate' stuff, or tell people to place this inside their gamemode/filterscript.
Re: views.inc - Frog, Bird, First Person and Free camera view -
System64 - 26.12.2011
wow, very great idea
Re: views.inc - Frog, Bird, First Person and Free camera view -
Kar - 26.12.2011
Pastebin please?
Re: views.inc - Frog, Bird, First Person and Free camera view -
fiki574 - 26.12.2011
Quote:
Originally Posted by irinel1996
Hehe, good job.
It's really, amm, funny. Frog's view makes me crazy!
|
Thanks!
Quote:
Originally Posted by Kwarde
Hmm, nice made. Only the FPS should be a little bit higher: When I walk, I see my hands lower, not as good as in front of me (unless when I walk with my arms as high as possible and then lower my hands :P).
+rep for the nice and easy script (just looked inside the code).
BTW,
You should use the define/undefine stuff: If someone is using 'OnPlayerUpdate' and when you include this, you will get errors - So you should either use the 'ALS_OnPlayerUpdate' stuff, or tell people to place this inside their gamemode/filterscript.
|
Forgot that, lol! Will use it in new version! Tnx!
Quote:
Originally Posted by System64
wow, very great idea
|
Yep!
Re: views.inc - Frog, Bird, First Person and Free camera view -
Moras - 26.12.2011
What kind of music? You can find out the name? Cool script
Re: views.inc - Frog, Bird, First Person and Free camera view -
TheArcher - 26.12.2011
Nice script. CAn you upload it on pastebin?
Re: views.inc - Frog, Bird, First Person and Free camera view -
fiki574 - 26.12.2011
Quote:
Originally Posted by Kar
Pastebin please?
|
Tomorrow!
Quote:
Originally Posted by Moras
What kind of music? You can find out the name? Cool script
|
Tnx!
Song is "Shake It" by "Train"
Quote:
Originally Posted by TheArcher
Nice script. CAn you upload it on pastebin?
|
I can, tomorrow! :P
Re: views.inc - Frog, Bird, First Person and Free camera view -
CyNiC - 26.12.2011
Good job.
You could add some key for the Free Camera View update from the player position.
Re: views.inc - Frog, Bird, First Person and Free camera view -
fiki574 - 26.12.2011
Quote:
Originally Posted by CyNiC
Good job.
You could add some key for the Free Camera View update from the player position.
|
You mean, I add ability to move camera?
Thanks!
Re: views.inc - Frog, Bird, First Person and Free camera view -
Lorenc_ - 27.12.2011
Edit your FPS view with my one, it's much better.
Well, some parts might not work since I've last edited however, borrow the calculation for it, it's nice.
pawn Код:
/*
*
*
*
*
*
*
*
*
*/
#include <a_samp>
#include <zcmd>
public OnFilterScriptInit()
{
return 1;
}
public OnFilterScriptExit() return 1;
public OnPlayerConnect(playerid)
{
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
return 1;
}
public OnPlayerSpawn(playerid)
{
SetTimerEx("fps_Update", 5, true, "d", playerid);
return 1;
}
CMD:w(playerid, params[])
{
GivePlayerWeapon(playerid, strval(params), 6000000);
return 1;
}
forward fps_Update(playerid);
public fps_Update(playerid)
{
static
Float: Angle,
Float: nX, Float: nY, Float: pX, Float: pY, Float: pZ
;
GetPlayerFacingAngle(playerid, Angle);
GetPlayerPos(playerid, pX, pY, pZ);
pZ += 0.7; // HEAD
SetPlayerCameraPos(playerid, pX + (1.8 * floatsin(-Angle, degrees)), pY + (1.8 * floatcos(-Angle, degrees)), pZ);
GetPlayerCameraFrontVector(playerid, pX, pY, pZ);
nX = pX - ( 4 * floatsin(-Angle, degrees) );
nY = pY - ( 4 * floatcos(-Angle, degrees) );
SetPlayerCameraLookAt(playerid, nX, nX, pZ);
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
return 1;
}
public OnVehicleSpawn(vehicleid)
{
return 1;
}
public OnVehicleDeath(vehicleid, killerid)
{
return 1;
}
public OnPlayerText(playerid, text[])
{
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/mycommand", cmdtext, true, 10) == 0)
{
// Do something here
return 1;
}
return 0;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveCheckpoint(playerid)
{
return 1;
}
public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveRaceCheckpoint(playerid)
{
return 1;
}
public OnRconCommand(cmd[])
{
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
return 1;
}
public OnObjectMoved(objectid)
{
return 1;
}
public OnPlayerObjectMoved(playerid, objectid)
{
return 1;
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
return 1;
}
public OnVehicleMod(playerid, vehicleid, componentid)
{
return 1;
}
public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
return 1;
}
public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
return 1;
}
public OnPlayerSelectedMenuRow(playerid, row)
{
return 1;
}
public OnPlayerExitedMenu(playerid)
{
return 1;
}
public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
return 1;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
return 1;
}
public OnRconLoginAttempt(ip[], password[], success)
{
return 1;
}
public OnPlayerUpdate(playerid)
{
return 1;
}
public OnPlayerStreamIn(playerid, forplayerid)
{
return 1;
}
public OnPlayerStreamOut(playerid, forplayerid)
{
return 1;
}
public OnVehicleStreamIn(vehicleid, forplayerid)
{
return 1;
}
public OnVehicleStreamOut(vehicleid, forplayerid)
{
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
return 1;
}
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
return 1;
}
EDIT:
If it doesn't work, my bad, I've edited and forgot to fix it. However, nice job anyway...
Re: views.inc - Frog, Bird, First Person and Free camera view -
Scenario - 27.12.2011
Quote:
Originally Posted by Kwarde
Hmm, nice made. Only the FPS should be a little bit higher: When I walk, I see my hands lower, not as good as in front of me (unless when I walk with my arms as high as possible and then lower my hands :P).
+rep for the nice and easy script (just looked inside the code).
BTW,
You should use the define/undefine stuff: If someone is using 'OnPlayerUpdate' and when you include this, you will get errors - So you should either use the 'ALS_OnPlayerUpdate' stuff, or tell people to place this inside their gamemode/filterscript.
|
Just use the new y_hooks syntax and it's really simple. Go into the include, include y_hooks and then replace "public OnPlayerUpdate" with "hook OnPlayerUpdate".
Anyways, it's very nice.
Re: views.inc - Frog, Bird, First Person and Free camera view -
Niko_boy - 27.12.2011
ahahah great job..
just a comment if there a way to fix such lags :P , i thnk increase in fps can fix
NvM cheers +1 rep :d
Re: views.inc - Frog, Bird, First Person and Free camera view -
_DownLoaD_ - 27.12.2011
Thx for the script.
i already using it
Re: views.inc - Frog, Bird, First Person and Free camera view -
fiki574 - 27.12.2011
Quote:
Originally Posted by Lorenc_
Edit your FPS view with my one, it's much better.
Well, some parts might not work since I've last edited however, borrow the calculation for it, it's nice.
pawn Код:
/* * * * * * * * * */
#include <a_samp> #include <zcmd>
public OnFilterScriptInit() { return 1; }
public OnFilterScriptExit() return 1;
public OnPlayerConnect(playerid) { return 1; }
public OnPlayerDisconnect(playerid, reason) { return 1; }
public OnPlayerSpawn(playerid) { SetTimerEx("fps_Update", 5, true, "d", playerid); return 1; }
CMD:w(playerid, params[]) { GivePlayerWeapon(playerid, strval(params), 6000000); return 1; }
forward fps_Update(playerid); public fps_Update(playerid) { static Float: Angle, Float: nX, Float: nY, Float: pX, Float: pY, Float: pZ ; GetPlayerFacingAngle(playerid, Angle); GetPlayerPos(playerid, pX, pY, pZ); pZ += 0.7; // HEAD
SetPlayerCameraPos(playerid, pX + (1.8 * floatsin(-Angle, degrees)), pY + (1.8 * floatcos(-Angle, degrees)), pZ); GetPlayerCameraFrontVector(playerid, pX, pY, pZ); nX = pX - ( 4 * floatsin(-Angle, degrees) ); nY = pY - ( 4 * floatcos(-Angle, degrees) );
SetPlayerCameraLookAt(playerid, nX, nX, pZ); return 1; }
public OnPlayerDeath(playerid, killerid, reason) { return 1; }
public OnVehicleSpawn(vehicleid) { return 1; }
public OnVehicleDeath(vehicleid, killerid) { return 1; }
public OnPlayerText(playerid, text[]) { return 1; }
public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/mycommand", cmdtext, true, 10) == 0) { // Do something here return 1; } return 0; }
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger) { return 1; }
public OnPlayerExitVehicle(playerid, vehicleid) { return 1; }
public OnPlayerStateChange(playerid, newstate, oldstate) { return 1; }
public OnPlayerEnterCheckpoint(playerid) { return 1; }
public OnPlayerLeaveCheckpoint(playerid) { return 1; }
public OnPlayerEnterRaceCheckpoint(playerid) { return 1; }
public OnPlayerLeaveRaceCheckpoint(playerid) { return 1; }
public OnRconCommand(cmd[]) { return 1; }
public OnPlayerRequestSpawn(playerid) { return 1; }
public OnObjectMoved(objectid) { return 1; }
public OnPlayerObjectMoved(playerid, objectid) { return 1; }
public OnPlayerPickUpPickup(playerid, pickupid) { return 1; }
public OnVehicleMod(playerid, vehicleid, componentid) { return 1; }
public OnVehiclePaintjob(playerid, vehicleid, paintjobid) { return 1; }
public OnVehicleRespray(playerid, vehicleid, color1, color2) { return 1; }
public OnPlayerSelectedMenuRow(playerid, row) { return 1; }
public OnPlayerExitedMenu(playerid) { return 1; }
public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid) { return 1; }
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { return 1; }
public OnRconLoginAttempt(ip[], password[], success) { return 1; }
public OnPlayerUpdate(playerid) { return 1; }
public OnPlayerStreamIn(playerid, forplayerid) { return 1; }
public OnPlayerStreamOut(playerid, forplayerid) { return 1; }
public OnVehicleStreamIn(vehicleid, forplayerid) { return 1; }
public OnVehicleStreamOut(vehicleid, forplayerid) { return 1; }
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { return 1; }
public OnPlayerClickPlayer(playerid, clickedplayerid, source) { return 1; }
EDIT:
If it doesn't work, my bad, I've edited and forgot to fix it. However, nice job anyway...
|
Will try it, tnx!
Quote:
Originally Posted by RealCop228
Just use the new y_hooks syntax and it's really simple. Go into the include, include y_hooks and then replace "public OnPlayerUpdate" with "hook OnPlayerUpdate".
Anyways, it's very nice.
|
Quote:
Originally Posted by Jagat
ahahah great job..
just a comment if there a way to fix such lags :P , i thnk increase in fps can fix
NvM cheers +1 rep :d
|
Quote:
Originally Posted by _DownLoaD_
Thx for the script.
i already using it
|
Thanks guys!
Re: views.inc - Frog, Bird, First Person and Free camera view -
Kyle - 27.12.2011
This is really good, well done on this mate. Although for the first person you could try increasing the z angle above so the camera is near the head and maybe also move it a bit forward.
Re: views.inc - Frog, Bird, First Person and Free camera view -
§с†¶e®РµРe - 27.12.2011
n1 fiki..
Re: views.inc - Frog, Bird, First Person and Free camera view -
SourceCode - 27.12.2011
cREATIVE
Re: views.inc - Frog, Bird, First Person and Free camera view -
fiki574 - 27.12.2011
Quote:
Originally Posted by KyleSmith
This is really good, well done on this mate. Although for the first person you could try increasing the z angle above so the camera is near the head and maybe also move it a bit forward.
|
In next version!
Quote:
Originally Posted by §с†¶e®РµРe
n1 fiki..
|
<3