I have no clue what you want to do with with script. But you can replace this big switch with something like this:
OnInit:
//initialize arrays:
setarray .cedi_cards[0],4001,4424,4025,4143,...;
setarray .cedi_points[0],10,15,10,200,...;
//make sure to add 64 entries to these arrays
//...
set .@rand0to63,rand(64);
set .@card,.cedi_cards[.@rand0to63]; //renamed .card$ to .@card
/*
.card$ is a string, you should use just .card or .@card instead.
The same goes for the other integer variables.
I'd also recommend to use .@scope variables here instead of an .npc variable.
*/
set .@points,.cedi_points[.@rand0to63]; //renamed .cedi_points$ to .@points
set .@cname$,getitemname(.cedi_cards[.@rand0to63]); // renamed .cname$ to .@cname$
//...