Created
January 16, 2021 13:01
-
-
Save JuniorDjjr/1e62f370d24183a1ad9df562db13fa6b to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// by Junior_Djjr - MixMods.com.br | |
// You need: https://forum.mixmods.com.br/f141-gta3script-cleo/t5206-como-criar-scripts-com-cleoplus | |
SCRIPT_START | |
{ | |
LVAR_INT i j hCarDamaged hCharDamaged pEntityDamager iType iPiece hCharDamager | |
LVAR_FLOAT fAmountPed fAmountVeh fIntensity f | |
IF LOAD_DYNAMIC_LIBRARY "CLEO+.cleo" (i) | |
IF GET_DYNAMIC_LIBRARY_PROCEDURE "GetCleoPlusVersion" i (j) | |
CALL_FUNCTION_RETURN j 0 0 ()(j) | |
IF j < 0x01000700 // 01 00 07 00 = v1.0.7.0 | |
PRINT_STRING_NOW "~r~Outdated CLEO+ version. Update it." 5000 | |
FREE_DYNAMIC_LIBRARY i | |
TERMINATE_THIS_CUSTOM_SCRIPT | |
ENDIF | |
ENDIF | |
FREE_DYNAMIC_LIBRARY i | |
ELSE | |
PRINT_STRING_NOW "~r~CLEO+ not installed." 5000 | |
TERMINATE_THIS_CUSTOM_SCRIPT | |
ENDIF | |
READ_FLOAT_FROM_INI_FILE "CLEO\Hit Health.ini" "Settings" "AmountPed" (fAmountPed) | |
READ_FLOAT_FROM_INI_FILE "CLEO\Hit Health.ini" "Settings" "AmountVeh" (fAmountVeh) | |
IF fAmountPed > 0.0 | |
SET_SCRIPT_EVENT_CHAR_DAMAGE ON OnCharDamage hCharDamaged | |
ENDIF | |
IF fAmountVeh > 0.0 | |
SET_SCRIPT_EVENT_CAR_WEAPON_DAMAGE ON OnCarWeaponDamage hCarDamaged | |
ENDIF | |
WHILE TRUE | |
WAIT 0x7FFFFFFF | |
ENDWHILE | |
OnCharDamage: | |
GET_CHAR_DAMAGE_LAST_FRAME hCharDamaged (pEntityDamager iType iPiece fIntensity) | |
IF pEntityDamager > 0x0 | |
AND fIntensity > 0.0 | |
GET_ENTITY_TYPE pEntityDamager (i) | |
IF i = ENTITY_TYPE_PED | |
GET_PED_REF pEntityDamager (hCharDamager) | |
GET_PED_TYPE hCharDamager (i) | |
IF i = PEDTYPE_PLAYER1 | |
OR i = PEDTYPE_PLAYER2 | |
GET_CHAR_HEALTH_PERCENT hCharDamager (f) | |
IF f < 100.0 | |
GET_CHAR_HEALTH hCharDamager i | |
f =# i | |
fIntensity *= fAmountPed | |
CLAMP_FLOAT fIntensity 1.0 50.0 (fIntensity) | |
//PRINT_FORMATTED_NOW "%f" 1000 fIntensity | |
f += fIntensity | |
i =# f | |
SET_CHAR_HEALTH hCharDamager i | |
ENDIF | |
ENDIF | |
ENDIF | |
ENDIF | |
RETURN_SCRIPT_EVENT | |
OnCarWeaponDamage: | |
GET_CAR_WEAPON_DAMAGE_LAST_FRAME hCarDamaged (hCharDamager iType fIntensity) | |
IF hCharDamager > 0x0 | |
AND fIntensity > 0.0 | |
GET_PED_TYPE hCharDamager (i) | |
IF i = PEDTYPE_PLAYER1 | |
OR i = PEDTYPE_PLAYER2 | |
GET_CHAR_HEALTH_PERCENT hCharDamager (f) | |
IF f < 100.0 | |
GET_CHAR_HEALTH hCharDamager i | |
f =# i | |
fIntensity *= fAmountVeh | |
CLAMP_FLOAT fIntensity 1.0 50.0 (fIntensity) | |
//PRINT_FORMATTED_NOW "%f" 1000 fIntensity | |
f += fIntensity | |
i =# f | |
SET_CHAR_HEALTH hCharDamager i | |
ENDIF | |
ENDIF | |
ENDIF | |
RETURN_SCRIPT_EVENT | |
} | |
SCRIPT_END |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment